gpt4 book ai didi

sql - 如何从存储过程返回所有值?

转载 作者:行者123 更新时间:2023-12-03 15:39:42 25 4
gpt4 key购买 nike

请原谅我的天真,但我刚开始使用 Delphi 与数据库(这对某些人来说可能看起来很奇怪)。

我已经使用 TADOConnection 设置了与数据库 (MSSQL) 的连接。我正在使用 TADOStoredProc 访问我的存储过程。

我的存储过程返回 2 列,第一列包含服务器名称,第二列包含服务器上的用户。它通常返回大约 70 条记录……数据量不是很多。

如何以编程方式枚举此存储过程?我可以将 DBGrid 放在表单上并将其附加到 TDataSource(然后附加到我的 ADOStoredProc),并且我可以验证是否正确检索了数据。

理想情况下,我想枚举返回的数据并将其移动到 TStringList 中。

目前,我使用以下代码来枚举 ADOStoredProc,但它只返回“@RETURN_VALUE”:

ADOStoredProc1.Open;
ADOStoredProc1.ExecProc;
ADOStoredProc1.Parameters.Refresh;

for i := 0 to AdoStoredProc1.Parameters.Count - 1 do
begin
Memo1.Lines.Add(AdoStoredProc1.Parameters.Items[i].Name);
Memo1.Lines.Add(AdoStoredProc1.Parameters.Items[i].Value);
end;

最佳答案

调用 Open 以获取返回的数据集

StoredProc.Open;
while not StoredProc.EOF do
begin
Memo1.Lines.Add(StoredProc.FieldByName('xyz').Value);
StoredProc.Next;
end;

关于sql - 如何从存储过程返回所有值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/927794/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com