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 であるという結論に達しました。データベース内でこの動作を変更することは可能ですか?