Я создаю хранимую процедуру в базе данных 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 отключен по умолчанию в хранимых процедурах. Возможно ли изменить это поведение в моей базе данных?