PDA

View Full Version : محدوده تعریف Declare



Accidentboy
سه شنبه 14 خرداد 1387, 22:20 عصر
با سلام

من به Query دارم که شامل چند تا select وupdate و....

که با کلمه Go از هم جدا می شن می خوام ببینم که میشه یه Declare عمومی واسه هم اون ها
تعربف کرد

declare @id int
set @id=:id
select * from table1 where id=@id
go
update table2 set f1=m where id=@id

error می ده

AminSobati
سه شنبه 14 خرداد 1387, 23:42 عصر
دوست عزیزم،
در حقیقت GO دستور TSQL نیست و بعضی کلاینتها مثل Query Analyzer یا Management Studio اون رو درک میکنند. GO باعث میشه تا دستورات ما بین اونها، با هم و یکجا به Compiler ارسال بشن. پس متغیر تعریف شده در یک دسته از دستورات (Batch) در Batch بعدی شناخته نمیشه