Originariamente inviato da riccardone
ambito = scopo
se scrivi in una finestra di query

GO -- inizio di un batch
DECLARE @ciccio int
SET @ciccio = 10
GO -- fine di un batch
PRINT @ciccio -- questa istruzione genera errore perchè la variabile non è più visibile

per lo stesso motivo

create procedure ....... -- inizio scopo
as
-- codice stored
GO -- fine scopo le variabili locali vengono eliminate
quindi @@IDENTITY è più 'costosa' ?