【发布时间】:2009-08-06 23:54:42
【问题描述】:
我想在 Delphi 中以编程方式创建一个 SQLDataSet 并使用它来执行存储过程并获取输出参数的值。看起来很简单,但我做不到。
这是 SQL Server 中的一个愚蠢的存储过程:
CREATE PROCEDURE [dbo].getValue @x INT OUTPUT
AS
BEGIN
SET @x = 10;
END
现在这是我尝试过但没有奏效的变体之一:
proc := TSQLDataSet.Create(nil);
proc.SQLConnection := DefaultConnection;
proc.CommandText := 'getValue';
proc.Params.CreateParam(ftInteger, '@x', ptOutput);
proc.Params.ParamByName('@x').Value := 0;
proc.ExecSQL(False);
value := newIdProc.Params.ParamByName('@x').AsInteger;
【问题讨论】:
标签: database delphi stored-procedures