متغیر، مقداری از حافظه است که مقادیر مورد استفاده ی برنامه در آن ذخیره می شوند. قبل از بکار بردن متغیر interpreter یا مفسر SQL باید اطلاع داشته باشد. این کار را تعریف یا اعلان متغیر می نامند. برای این منظور، از واژه ی کلیدی DECLARE با فرمول زیر استفاده نمایید:
1
|
DECLARE @VariableName DataType |
کلمه ی DECLARE بهinterpreter اطلاع می دهد که شما متغیر را اعلان کرده اید. در Transact-SQL اسم متغیر با علامت@ آغاز می شود. اسم متغیر به شما اجازه می دهد که حافظه مورد نیاز برای ذخیره آن را مشخص و تعریف کنید. Transact-SQL در خصوص انتخاب اسامی برای متغیر انعطاف پذیری زیادی دارد. به عنوان مثال، اسم یک متغیر می تواند فقط از اعداد تشکیل شده باشد.
توصیه می شود قوانین زیر را در زمان انتخاب اسم برای متغیر، رعایت نمایید:
به هنگام اعلان متغیر، بعد از مشخص کردن اسم باید نوع داده ای را نیز مشخص کنید.
می توان چندین متغیر را به طور همزمان اعلان نمود. برای این کار بایستی آن ها را به وسیله ی ویرگول از هم جدا کنید:
1
|
DECLARE @Variable1 DataType1, @Variable2 DataType2, @Variable_n DataType_n; |
بر خلاف زبان های دیگر، اگر متغیرهای مختلف با نوع داده ای مشترک و یکسان تعریف کنید، بعد از هر متغیر باید نوع داده ای آن را نیز مشخص کنید.
پس از اعلان متغیر، مفسر فضای خالی را برای ذخیره به آن تخصیص می دهد، اما لازم به ذکر است که این به معنای پرکردن آنی فضا با مقدار نیست. به عبارتی دیگر متغیر در ابتدا تهی یا null می باشد. برای تغییر این وضعیت کافی است به آن یک مقدار نسبت دهید. این فرایند را مقدار دهی اولیه یا به انگلیسی initialization گویند.
برای این کار، در جای لازم، واژه ی کلیدی SELECTیا SET را وارد کرده و سپس اسم متغیر و بعد عملگر = و سرانجام مقدار را درج کنید:
1
|
SELECT @VariableName = DesiredValue |
یا
1
|
SET @VariableName = DesiredValue |
هنگامی که مقداردهی متغیر کامل به انجام رسید، می توانید آن را در دسترس قرار داده یا نمایش دهید. برای انجام این کار، همانند دستور بالا اسم متغیر را سمت راست واژه ی کلیدیPRINT یا SELECTدرج کنید.