gpt4 book ai didi

sql - 设置 NOCOUNT OFF 或返回 @@ROWCOUNT?

转载 作者:行者123 更新时间:2023-12-02 04:47:42 25 4
gpt4 key购买 nike

我正在 Sql Server 2008 数据库中创建一个存储过程。我想返回受影响的行数。 SET NOCOUNT OFF 或 RETURN @@ROWCOUNT 哪个选项更好?

ALTER PROCEDURE [dbo].[MembersActivateAccount]
@MemberId uniqueidentifier
AS
BEGIN
-- Should I use this?
SET NOCOUNT OFF;

UPDATE [dbo].Members SET accountActive = 1 WHERE id = @MemberId;
--Or should I SET NOCOUNT ON and use the following line instead?
--return @@ROWCOUNT;
END

我知道两者都有效,但哪个是更​​好的选择,为什么?

<小时/>

经过一番尝试,我得出的结论是,SET NOCOUNT 在存储过程中默认处于关闭状态。是否可以在我的数据库中更改此行为?

最佳答案

使用@@RowCount。它是明确且透明的,它完全由您的代码而不是内置行为控制。

NOCOUNT 选项可以手动设置为默认为ON(选项>查询执行>SQL Server>高级)。如果您以这种方式设置它,但随后在存储过程中声明SET NOCOUNT OFF,则本地设置优先。

关于sql - 设置 NOCOUNT OFF 或返回 @@ROWCOUNT?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/995589/

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