Sto creando una stored procedure nel database Sql Server 2008. Voglio restituire il numero di righe interessate. Qual è l'opzione migliore SET NOCOUNT OFF o RETURN @@ ROWCOUNT?SET NOCOUNT OFF o 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
So che entrambi funzionano, ma quale è una scelta migliore e perché?
Dopo alcuni tentativi, sono giunto alla conclusione che SET NOCOUNT è OFF per impostazione predefinita all'interno delle stored procedure. È possibile modificare questo comportamento all'interno del mio database?
Non vedo nulla menzionato su SET NOCOUNT nella documentazione di SqlCommand. Sei sicuro che ci sia lo stesso problema con DataAdapters? – niaher
Google it- troverete molte prove che lo fa: http://www.google.co.uk/search?client=firefox-a&rls=org.mozilla%3Aen-GB%3Aficficio&channel=s&hl=en&q=ExecuteNonQuery+ NOCOUNT & meta = & btnG = Google + Search. Non posso essere sicuro che sia lo stesso problema di DataAdapters senza testarlo, ma non vedo perché ci sarebbe un altro motivo. – RichardOD