10/19/1995 SYBASE/MS SQL SRVR INPUT AND OUTPUT PARAMETER USAGE IN DELPHI TSTORED PROCS AND THE SQL EDITOR Example (working) code from a simple Delphi application The servers tested and the text of the procedures are @ the bottom of this file. Examples that can be executed from the SQL Editor in the Database Desktop, Visual dBASE, and Pdoxwin are also included. procedure TForm1.BitBtn1Click(Sender: TObject); begin storedproc1.active:=false; database1.connected:=false; StoredProc1.Params.clear; {For RETGETCHAR: storedproc1.Params.CreateParam(ftstring, '@INVAR',ptInput); StoredProc1.Params.CreateParam(ftstring, '@OUTVAR',ptOutput); storedproc1.params[0].asstring:=edit2.text;} {For RETGETFL:} storedproc1.Params.CreateParam(ftfloat, '@INVAR',ptInput); StoredProc1.Params.CreateParam(ftfloat, '@OUTVAR',ptOutput); storedproc1.params[0].asfloat:=strtoint(edit2.text); database1.connected:=true; storedproc1.execproc; edit1.text:=storedproc1.parambyname('@OUTVAR').asstring; { 10/19/1995 Using Delphi C/S v1.02 and BDE 2.5 simple tests in support were performed for this document using the two example procs below on the following servers: SQL Server/10.0.2/P/PC Intel/Windows NT 3.51 (via TCP/IP) SYBASE SQL Server/4.2.2/P/Novell/NetWare386 (via SPX) MS SQL Server 4.20a Tue Sep 15 12:00:00 1992 (via SPX) Microsoft SQL Server 6.0 - 6.00.121 (Intel X86) (via TCP/IP) 2 create proc examples: CREATE PROCEDURE RETGETFL @INVAR float, @OUTVAR float OUTPUT AS SELECT @OUTVAR=@INVAR+33 /*CREATE PROCEDURE RETGETCHAR @INVAR varchar(20), @OUTVAR varchar(20) OUTPUT AS SELECT @OUTVAR=@INVAR+' back out'*/ SQL Editor/TQuery exec proc examples: DECLARE @OUT float EXEC RETGETFL 11, @OUT OUTPUT SELECT @OUT /*DECLARE @OUT varchar(20) EXEC RETGETCHAR 'input', @OUT OUTPUT SELECT @OUT*/ } end; ID:CSxxxx