دستورات SQL Server

پایگاه داده درست مثل قفسه کتاب یا کمد غیرفیزیکی عمل می‌کند و کار آن سروسامان دادن به داده‌ها است. پایگاه داده‌ها سیستم‌های مدیریت مختلفی دارند که هر کدام برای کاربرد خاصی به‌کارمی‌آید. پرکاربردترین سیستم مدیریت پایگاه داده، RDBMS یا سیستم مدیریت رابطه‌ای پایگاه داده است. بسیاری از سایت‌ها و اپلیکیشن‌هایی که در حال حاضر از آن‌ها استفاده می‌کنیم، پشت لایه‌های ظاهری خود از چندین پایگاه داده برای ثبت اطلاعات کاربران، کالاها و… استفاده می‌کنند. SQL سرور یک سیستم مدیریت پایگاه داده رابطه‌ای است که توسط مایکروسافت ارائه می‌شود. هدف این مطلب آشنایی با دستورات SQL Server و یادگیری مبانی آن است.

 

SQL Server چیست و چه امتیازاتی دارد؟

SQL Server یک سیستم مدیریت رابطه‌ای پایگاه داده (RDBMS) است که توسط مایکروسافت به بازار عرضه می‌شود. مدیریت رابطه‌ای پایگاه داده اساس طراحی بسیاری از سایت‌ها و اپلیکیشن‌ها را تشکیل داده است و شامل نگه‌داری داده‌ها در قالب تعدادی جدول است. مایکروسافت در کنار SQL Server یک پیاده‌سازی دیگر با نام T-SQL را ارائه داده است تا سازگاری آن با ساختار کدنویسی بیشتر کند. SQL سرور تا سال 2016 به مدت بیش از 20 سال فقط روی محیط ویندوز اجرا می‌شد. در سال 2016 مایکروسافت تصمیم گرفت آن را برای سیستم‌عامل لینوکس هم ارائه کند. این سیستم مدیریت پایگاه داده از اکتبر 2016 روی هر دو سیستم‌عامل محبوب قابل استفاده است.

موارد استفاده SQL Server

مهم‌ترین امتیازات دستورات SQL Server عبارتند از:

  • داده‌ها با مدیریت رابطه‌ای نظم و ترتیب بسیار خوبی خواهند داشت و فراخوانی آن‌ها سریع‌تر و بهتر خواهد بود.
  • با استفاده از یک RDBMS برنامه‌نویس می‌تواند داده‌ها را توصیف کند.
  • تعریف داده و دستکاری آن در جهت اهداف بسیار ساده است.
  • کدهای SQL Server به‌صورت ترکیبی با زبان‌های دیگر قابل استفاده است.
  • در ساخت و حذف جدول‌ها محدودیتی وجود ندارد.
  • کار با داده‌ها از طریق رویه‌ها و توابع SQL Server بسیار ساده‌تر می‌شود.
  • کار با این زبان نیاز به دانش برنامه‌نویسی چندانی ندارد.
  • کنترل سطح دسترسی تیم در SQL Server بسیار ساده است.
مقاله پییشنهادی : زبان SQL چیست
آموزش زبان SQL

مراحل کاری SQL Server چگونه است؟

شما در کد خود درخواست دریافت، ایجاد، حذف یا ویرایش داده‌ها را می‌دهید. هر دستور شما یک Query نام دارد. این Query در ابتدا وارد Query Language Processor شده و از لحاظ نوشتاری تجزیه می‌شود. در ادامه کد تجزیه شده وارد یک Optimizer می‌شود تا سرعت بالاتری در اجرا داشته باشد. مرحله بعدی رسیدن به موتور DBMS است. در موتور DBMS مدیر فایل و مدیر تراکنش درخواست را بررسی کرده و تغییر مورد نظر کدنویس را به یک دستور نهایی تبدیل می‌کنند. در نهایت این دستور به پایگاه‌داده فیزیکی ارسال شده و اجرا می‌شود.

مفاهیم اساسی در SQL Server

همانطور که گفتیم SQL Server یک نوع سیستم مدیریت اطلاعات است که از روش رابطه‌ای استفاده می‌کند. روش رابطه‌ای یعنی نگه‌داری داده‌ها در جداولی که سطر‌های آن را Record ها و ستون‌های آن را ویژگی‌ها تشکیل می‌دهند. در ادامه به تعریف این مفاهیم می‌پردازیم.

مفاهیم اساسی SQL Server

جدول: جدول در SQL مجموعه‌ای از داده‌های مرتبط است که در کنار یکدیگر قرار گرفته‌اند. برای مثال نام، سن و حقوق معلمان یک مدرسه یا نام، نام پدر و معدل دانش‌آموزان یک مدرسه هر کدام تشکیل یک جدول را می‌دهند. در جدول هر سطر شامل یک Record است. اطلاعات جمع شده از هر دانش‌آموز، مشتری، معلم یا… تحت عنوان Record شناخته می‌شود. ستون‌ها هم ویژگی‌های اندازه‌گیری‌شده هستند. به جدول زیر توجه کنید:

جدول در SQL Server

همانطور که می‌بینید در این جدول هر مشتری با یک شماره، یک نام، سن، آدرس و حقوق مشخص شده است. هر سطر یک Record بوده و هر ستون یک Field است. این‌ها مفاهیم پایه‌ای SQL Server را تشکیل می‌دهند.

آشنایی اولیه با دستورات SQL Server

دستورات استاندارد SQL به سه دسته تقسیم می‌شوند:

  • دسته اول DDL یا دستورات مربوط به تعریف داده (Data Definition Language)
شماره دستور و عملکرد
1 CREATE

ساخت یک جدول جدید، یک View جدید از یک جدول یا یک شی جدید در پایگاه داده

2 ALTER

ویرایش یکی از اشیاء موجود در پایگاه داده

3 DROP

پاک کردن تمام یک جدول، یک View از یک جدول یا دیگر اشیاء پایگاه داده

و دسته دوم DML یا دستورات کار با داده (Data Manipulation Language):

شماره دستور و عملکرد
1 SELECT

یکی از record ها را (مثلا اطلاعات یک مشتری) از یک یا چند جدول بازیابی می‌کند

2 INSERT

یک record جدید می‌سازد

3 UPDATE

یک record را به‌روزرسانی می‌کند

4 DELETE

یک record را پاک می‌کند

دسته آخر DCL یا دستورات کنترلی (Data Control Language)

شماره دستور و عملکرد
1 GRANT

دادن دسترسی به کاربر برای یک داده

2 REVOKE

گرفتن دسترسی به داده از یک کاربر

دستور Where در SQL Server

دستور Where یکی از مهم‌ترین و کاربردی‌ترین دستورات SQL سرور است که یک دستور شرطی به‌حساب‌می‌آید. با استفاده از این دستور می‌توان برای مثال «نام معلمان بالای 30 سال» یا «دانشجویان مشروط شده» را از جداول مربوطه استخراج کرد. اما چگونه؟ به مثال زیر توجه کنید:

در اینجا از جدول اطلاعات دانشجویان، آن‌هایی را انتخاب می‌کنیم که معدل زیر 12 داشته باشند. بعد از Where همیشه یک عملگر می‌آید. عملگرهای دستور Where عبارتند از:

عملگر عملکرد
= برابری
> بزرگتر از
< کوچکتر از
>= بزگتر مساوی
<= کوچکتر مساوی
<> نامساوی (ممکن است به صورت != در بعضی ورژن‌های SQL Server استفاده شود)
BETWEEN وجود یک عدد بین دو عدد دیگر
LIKE جستجو برای یک الگو
IN برای مشخص کردن مقادیر ممکن مختلف برای یک ستون

عملگرهای OR، AND و NOT

Where علاوه بر عملگرهای بالا می‌تواند با این سه هم ترکیب شود. کاربرد این سه عملگر برای ترکیب چند عملگر یا نقیض کردن یکی از آن‌ها است. برای مثال فرض کنید می‌خواهیم اسامی دانش‌آموزان با معدل بالا و انضباط پایین را از جدول استخراج کنیم. در این شرایط عملگر AND دو عملگر کمتر و بیشتر را ترکیب می‌کند. به مثال‌های زیر برای فهم بهتر دقت کنید

در اینجا اسامی مشتریانی که ساکن ایران و شهر تهران هستند درخواست می‌شود.

در اینجا اسامی مشتریانی که ساکن برلین یا مونیخ هستند از پایگاه داده درخواست می‌شود.

در اینجا هم اسامی همه افراد به‌حز ساکنان آلمان از پایگاه داده مشتریان درخواست داده می‌شود.

ترتیب بخشیدن به یک جدول با توجه به یک ستون

 

کار با داده ها در SQL

 

فرض کنید می‌خواهید لیست اسامی مشتریان را به ترتیب میزان خرید آن‌ها مرتب کنید. به این شکل که مهم‌ترین خریداران در صدر لیست و مشتریان با کمترین خرید در پایین لیست باشند. برای این کار لازم است کل جدول را بر اساس ستون میزان خرید مرتب نمایید.

 

 

کلیدواژه DESC که در آخر کد می‌بینید مخفف DESCENDING یا سیر نزولی است. اگر این قسمت را خالی بگذارید، SQL به‌طورخودکار داده‌ها را به‌صورت صعودی (ASCENDING) مرتب می‌کند. برای صعودی مرتب کردن داده‌ها همچنین می‌توان از کلیدواژه ASC استفاده کرد.

 

ویدیو پییشنهادی : آموزش مبانی و دستورهای SQL
آموزش مبانی و دستورهای SQL

 

برای مرتب کردن جدول می‌توان از ترکیب داده‌های دو یا چند ستون استفاده کرد. مثلا اگر میزان خرید دو مشتری برابر بود، برای ترتیب دادن به آن‌ها به سراع ستون نام و ترتیب الفبایی برویم یا به تاریخ خرید مراجعه کنیم (کسی که اخیرا خرید کرده بالاتر قرار بگیرد).

علاوه‌بر‌این می‌توانیم ترکیب دو ستون را مورد استفاده قرار دهیم در حالی که یکی صعودی و دیگری نزولی مرتب شده است.

دستور INSERT INTO

زمانی که بخواهیم یک Record جدید را به جدول اضافه کنیم از INSERT INTO استفاده می‌کنیم. در مثال زیر اطلاعات یک مشتری جدید به جدول Customers افزوده می‌شود.

همچنین می‌توانیم فقط به چند ستون مشخص داده اضافه کنیم:

دستور UPDATE

با استفاده از این دستور اطلاعات یک جدول را به‌روز می‌کنیم.

در این مثال در جدول اطلاعات مشتریان، مشتری با کد شماره یک پیدا شده و ستون‌های نام و شهر او به‌روز می‌شوند.

 

کلام آخر در مورد دستورات SQL Server

SQL Server یکی از محصولات قدیمی مایکروسافت است که با وجود گذشت 20 سال از عرضه همچنان محبوبیت و کاربرد ویژه خود را دارد. این محصول یک سیستم مدیریت پایگاه داده به‌صورت رابطه‌ای بوده و از سال 2016 روی هر دو سیستم‌عامل ویندوز و لینوکس قابل استفاده است. SQL زبانی ساده و سریع است که خیلی ساده با زبان‌های دیگر ترکیب می‌شود. در حال حاضر بسیاری از سایت‌ها و برنامه‌های کامپیوتری یا موبایلی از SQL برای نگهداری و کار با داده‌ها استفاده می‌کنند. با استفاده از دستورات SQL می‌توان اطلاعات را در قالب record ها و field ها ذخیره کرده و در ادامه آن‌ها را ویرایش یا حذف کرد. کوشش مقاله دستورات SQL Server بر آشنا کردن شما با مفاهیم اساسی و دستورات SQL Server بود. برای یادگیری عمیق‌تر و بیشتر می‌توانید به دوره آموزش SQL Server مکتبخونه مراجعه کنید.