متغیرها در پایگاه داده SQL
متغیرها در پایگاه داده SQL مقادیری را در طول اجرای اسکریپت ذخیره میکنند و با DECLARE تعریف و با SELECT مقداردهی می شود.
تعریف متغیرها در پایگاه داده SQL
در زبان SQL، متغیرها یکی از مهمترین ابزارها برای ذخیرهسازی و مدیریت دادههای موقت در طول اجرای یک اسکریپت یا رویه ذخیرهشده (Stored Procedure) هستند.
متغیرها امکان ذخیره مقادیر مختلف را برای انجام عملیات محاسباتی، شرطی و کنترلی فراهم میکنند.
متغیرها در SQL بهمنظور نگهداری مقادیر موقت در حافظه استفاده میشوند.
این مقادیر میتوانند دادههای متنی، عددی، تاریخ و زمان یا مقادیر منطقی باشند.
متغیرها در SQL Server با استفاده از دستور DECLARE تعریف میشوند.
پس از تعریف متغیر، میتوان مقادیر را با استفاده از دستور SET یا SELECT به آنها تخصیص داد.
در این مقاله به تعریف، انواع، نحوه مقداردهی و استفاده از متغیرها در SQL Server خواهیم پرداخت و مثالهای کاربردی ارائه میدهیم.
مثال تعریف متغیر
DECLARE @UserName NVARCHAR(50);
DECLARE @UserAge INT;
در این مثال، دو متغیر تعریف شدهاند:
@UserName: یک متغیر متنی با حداکثر طول 50 کاراکتر.
@UserAge: یک متغیر عدد صحیح.
نحوه مقداردهی به متغیرها
برای مقداردهی به متغیرها در SQL Server از دو روش اصلی استفاده میشود:
-
مقداردهی با SET
این روش برای اختصاص مقدار به یک متغیر استفاده میشود.
مثال:
DECLARE @UserName NVARCHAR(50);
SET @UserName = 'Ali';
-
مقداردهی با SELECT
در این روش، مقدار متغیر از یک کوئری استخراج میشود.
مثال:
DECLARE @UserAge INT;
SELECT @UserAge = Age FROM Users WHERE UserID = 1;
در این مثال، مقدار سن کاربر با شناسه 1 به متغیر @UserAge تخصیص داده میشود.
انواع متغیرها در SQL Server
متغیرها در SQL Server بر اساس نوع دادهای که ذخیره میکنند، به دستههای مختلفی تقسیم میشوند. در ادامه هر نوع متغیر را با مثال توضیح میدهیم:
-
متغیرهای رشتهای (String Variables)
متغیرهای رشتهای برای ذخیره دادههای متنی استفاده میشوند. رایجترین انواع داده برای متغیرهای رشتهای عبارتاند از CHAR, VARCHAR, و NVARCHAR.
مثال:
DECLARE @Message NVARCHAR(100);
SET @Message = 'Hello, SQL!';
PRINT @Message;
در این مثال، متغیر @Message مقدار "Hello, SQL!" را ذخیره کرده و سپس آن را چاپ میکند.
-
متغیرهای عددی (Numeric Variables)
برای ذخیره اعداد صحیح یا اعشاری از این نوع متغیرها استفاده میشود. رایجترین انواع دادههای عددی شامل INT, BIGINT, FLOAT, DECIMAL, و NUMERIC هستند.
مثال:
DECLARE @TotalSales FLOAT;
SET @TotalSales = 12345.67;
PRINT @TotalSales;
در این مثال، مقدار 12345.67 در متغیر @TotalSales ذخیره شده و نمایش داده میشود.
-
متغیرهای تاریخ و زمان (Date and Time Variables)
متغیرهای تاریخ و زمان برای ذخیره مقادیر مرتبط با تاریخ و زمان استفاده میشوند. رایجترین انواع دادههای این دسته شامل DATETIME, DATE, و TIME هستند.
مثال:
DECLARE @CurrentDate DATETIME;
SET @CurrentDate = GETDATE();
PRINT @CurrentDate;
در این مثال، تاریخ و زمان فعلی سیستم در متغیر @CurrentDate ذخیره شده و چاپ میشود.
-
متغیرهای منطقی (Boolean Variables)
در SQL متغیرهای منطقی بهصورت مستقیم پشتیبانی نمیشوند، اما میتوان از نوع داده BIT برای ذخیره مقادیر 0 و 1 استفاده کرد که بهترتیب نمایانگر False و True هستند.
مثال:
DECLARE @IsActive BIT;
SET @IsActive = 1;
IF @IsActive = 1
PRINT 'Active';
ELSE
PRINT 'Inactive';
استفاده از متغیرها در کوئریها
متغیرها میتوانند در دستورات مختلف SQL مانند SELECT, INSERT, UPDATE و DELETE استفاده شوند. این امر باعث انعطافپذیری بیشتر کوئریها میشود.
مثال: استفاده در شرطها
DECLARE @MinAge INT;
SET @MinAge = 18;
SELECT *
FROM Users
WHERE Age >= @MinAge;
در این مثال، متغیر @MinAge بهعنوان شرط در کوئری SELECT استفاده شده است.
🌟 آیا میخواهید به یک متخصص پایگاه داده تبدیل شوید و در دنیای فناوری اطلاعات بدرخشید؟
با دوره آموزشی SQL Server ما، شما میتوانید به راحتی و با روشی عملی، تمام مهارتهای لازم را یاد بگیرید!
این دوره به شما آموزش میدهد که چگونه دادهها را به بهترین شکل مدیریت کنید، گزارشهای قدرتمند بسازید و به تحلیلهای عمیق دست یابید.
با محتوای جذاب و پروژههای واقعی، شما نه تنها تئوری را یاد میگیرید، بلکه تواناییهای عملی خود را نیز تقویت میکنید.
پس فرصت را از دست ندهید! همین امروز به جمع یادگیرندگان ما بپیوندید و اولین قدم را به سوی آینده شغلی روشنتر بردارید!
همین حالا شروع کنید و به دنیای دادهها بپیوندید!
متغیرهای محلی و عمومی
-
متغیرهای محلی (Local Variables)
متغیرهای محلی با دستور DECLARE تعریف شده و فقط در همان بلوک کد یا رویه قابل استفاده هستند.
مثال:
DECLARE @TempVar INT;
SET @TempVar = 10;
PRINT @TempVar;
-
متغیرهای عمومی (Global Variables)
متغیرهای عمومی بهطور پیشفرض در SQL Server تعریف شدهاند و نیازی به مقداردهی ندارند. برخی از متغیرهای عمومی شامل:-
@@ROWCOUNT
تعداد ردیفهای تحت تأثیر قرار گرفته در یک عملیات. -
@@VERSION
نسخه SQL Server.
-
مثال:
PRINT @@VERSION;
مزایای استفاده از متغیرها در SQL
-
مدیریت دادههای موقت
متغیرها امکان ذخیرهسازی مقادیر موقت برای انجام محاسبات و تصمیمگیریها را فراهم میکنند. -
افزایش خوانایی کد
استفاده از متغیرها باعث میشود که کدهای SQL قابلفهمتر و سازماندهیشدهتر شوند. -
انعطافپذیری
متغیرها اجازه میدهند که مقادیر بهصورت پویا تعیین و تغییر داده شوند. -
کاهش وابستگی به دادههای ثابت
با استفاده از متغیرها میتوانید از دادههای متغیر بهجای مقادیر ثابت استفاده کنید.
متغیرها در SQL Server ابزارهای قدرتمندی برای مدیریت دادهها در سطح موقت هستند.
با استفاده از آنها میتوانید دادهها را در طول اجرای اسکریپت نگهداری کرده و در عملیات مختلف استفاده کنید.
درک انواع متغیرها، نحوه مقداردهی و استفاده از آنها در کوئریها به شما کمک میکند کدهای بهینهتر و قابل نگهداریتری بنویسید.
برای تسلط بر متغیرها در SQL، مطالعه و تمرین مداوم پیشنهاد میشود.
مثال کاربردی از متغیرها در SQL Server
فرض کنید میخواهید لیستی از کاربران فعال (Active Users) را فیلتر کنید و سن آنها را نیز در محاسبات استفاده کنید.
DECLARE @MinAge INT;
DECLARE @Status NVARCHAR(10);
SET @MinAge = 18;
SET @Status = 'Active';
SELECT UserID, UserName, Age
FROM Users
WHERE Age >= @MinAge AND Status = @Status;
توضیح:
متغیر @MinAge برای ذخیره حداقل سن کاربران استفاده شده است.
متغیر @Status وضعیت کاربران (فعال یا غیرفعال) را مشخص میکند.
این کوئری لیستی از کاربران فعال با سن حداقل 18 سال را نمایش میدهد.





کاربران ما
شما هم نظرتون با ما دریاره “متغیرها در پایگاه داده SQL” اشتراک بزارید
برای ارسال نظر لطفا ورود یا ثبت نام کنید