如何在TADOCommand中检查插入/修改的记录数量?

发布于 2024-11-16 20:34:35 字数 213 浏览 5 评论 0原文

我正在使用 SQL Server 数据库,在调用一个简单的 SQL 脚本后,我想知道有多少记录受到脚本中最后(或唯一)执行的语句的影响。

我找不到如何在 Delphi 的 TADOCommand 中实现此目的的参考,并且我知道 SQL Server 将此信息提供给提供者。我知道一些解决方法,例如在另一个查询中获取@@ROWCOUNT,但这会带来一些开销和不必要的复杂性。

谢谢。

I am using SQL Server database and after calling a simple SQL script I would like to know how many records were affected by last (or only) executed statement in a script.

I cannot find the reference how to achieve this in Delphi's TADOCommand and I know SQL Server gives this information to provider. I am aware of workarounds like getting @@ROWCOUNT in another query, yet this gives some overhead and unnecessary complexity.

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

谢绝鈎搭 2024-11-23 20:34:35

您使用的是

function Execute(var RecordsAffected: Integer; const Parameters: OleVariant): _Recordset; 

Execute 方法的版本吗?

来自 doc

RecordsAffected 表示数量
记录数,如果命令运行于
受命令影响的数据
执行后。

所以这应该会给你你所需要的。

免责声明:我无法针对 SQL Server 进行测试(没有它)。

Do you use the

function Execute(var RecordsAffected: Integer; const Parameters: OleVariant): _Recordset; 

version of the Execute method?

From the doc:

RecordsAffected indicates the number
of records, if the command operates on
data, that are affected by the command
after execution.

So that should give you what you need.

Disclaimer: I cannot test this against SQL Server (don't have it).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文