我正在 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 默认为 OFF。是否可以在我的数据库中更改此行为?