آموزش جامع زبان SQL: آشنایی با SQL

30 بهمن 1397
درسنامه درس 1 از سری آموزش زبان SQL
sql-introduction

با سلام، با دوره ی آموزش جامع زبان SQL در خدمت شما هستیم. از آن جایی که دوره ی آموزشی رابط کاربری PDO در سایت قرار گرفته است و برای کار با پایگاه داده چه با PDO و چه با mysqli باید زبان SQL را بلد باشید، تصمیم گرفتیم که زبان SQL را نیز طی دوره ای جدید آموزش دهیم.

این دوره هیچ پیش نیازی ندارد و حتی اگر چیزی از زبان های پایگاه داده نمی دانید، می توانید با دوره را شروع کنید.

SQL چیست؟

SQL مخفف Structured Query Language است که در فارسی "زبان ساختار یافته ی کوئری" یا "زبان ساختارمند پرسش‌ها" شناخته می شود.

بنابراین همانطور که از نام اش پیداست، یک زبان استاندارد برای ذخیره سازی، تغییر و دریافت داده ها در یک پایگاه داده است. در این دوره یاد خواهید گرفت چطور از زبان SQL در پایگاه های داده ی مختلفی مانند MySQL, SQL Server, MS Access, Oracle, Sybase, Informix, Postgres و غیره استفاده کنید.

باید بدانید این زبان در سال 1986 به عنوان یک استاندارد در مؤسسه استانداردهای ملی آمریکا (ANSI) و همچنین در سال 1987 در سازمان بین‌المللی استانداردسازی (ISO) ثبت شد.

کار SQL چیست؟

  • SQL کوئری ها را در یک پایگاه داده اجرا می کند.
  • SQL داده ها را از یک پایگاه داده دریافت می کند.
  • SQL می تواند داده ها (رکوردها) را در یک پایگاه داده ثبت کند.
  • SQL می تواند داده ها (رکوردها) را در یک پایگاه داده بروزرسانی کند.
  • SQL می تواند داده ها (رکوردها) را از یک پایگاه داده حذف کند.
  • SQL می تواند پایگاه های داده ی جدید بسازد.
  • SQL می تواند در یک پایگاه داده جدول های جدیدی بسازد.
  • SQL می تواند در یک پایگاه داده stored procedures بسازد.
  • SQL می تواند در یک پایگاه داده views بسازد.
  • SQL می تواند permissions را برای جدول ها، procedure ها و view ها تعیین کند.

نکته: با اینکه این زبان یک استانداردِ ANSI/ISO است اما نسخه های مختلفی از آن وجود دارد. البته برای اینکه تا حدی استاندارد بودن خود را حفظ کنند، تمام نسخه ها از دستور های اصلی (مانند SELECT, UPDATE, DELETE, INSERT, WHERE) پشتیبانی می کنند.

استفاده از SQL در یک وب سایت

برای ساخت وب سایتی که بخواهد داده ای را از پایگاه داده نشان دهد نیاز به موارد زیر دارید:

  • یک برنامه ی RDBMS1 برای پایگاه داده
  • زبان برنامه نویسی server-side مانند زبان های PHP و ASP
  • استفاده از SQL برای دریافت داده از پایگاه داده
  • استفاده از HTML / CSS برای نمایش زیبا و صحیح داده ها

1- آیا با RDBMS ها آشنا هستید؟

RDBMS چیست؟

RDBMS مخفف relational database management system است که در فارسی با نام "سامانه مدیریت پایگاه داده رابطه‌ای" شناخته می شود. این سامانه، پایه ی تمام پایگاه های داده ی مدرن مانند MS SQL Server, IBM DB2, Oracle, MySQL و Microsoft Access است.

بر اساس چیزی که گفته شد امیدوارم متوجه تفاوت بین SQL و MySQL شده باشید؛ SQL یک زبان برنامه نویسی سطح بالا است که با پایگاه داده کار می کند و MySQL یک سامانه ی مدیریت پایگاه داده ی رابطه ای است و همانطور که از اسمش پیداست پایگاه های داده ی رابطه ای را مدیریت می کند.

در واقع داده های RDBMS در اشیاء پایگاه داده به نام جدول ذخیره می شوند.

جدول (table) مجموعه ای از داده های مرتبط به هم است که شامل ردیف (row) و ستون (column) می باشد.

برای توضیح این موارد باید نگاهی به یک پایگاه داده بیندازیم. از آن جایی که پایگاه های داده در سمت سرور هستند باید برای آن یک سرور تهیه کنیم اما چنین کاری تنها برای آموزش اشتباه است. به جای آن از یک پایگاه داده ی آماده استفاده می کنیم:

پایگاه داده ی آماده برای تمرین

نکته ی مهم: برای کار با این پایگاه داده باید از مرورگر های کروم، اپرا یا سافاری استفاده کنید. اگر از مرورگر فایر فاکس استفاده کنید، نمی توانید بسیاری از دستورات را روی آن اجرا کنید.

اگر دوست دارید فایل پایگاه داده را جداگانه داشته باشید تا به صورت آفلاین روی آن کار انجام دهید می توانید از لینک های زیر آن را دانلود کنید:

دانلود پایگاه داده ی معروف Northwind برای MS Access و MS SQL Server

دانلود پایگاه داده ی معروف Northwind برای MySQL


اگر وارد لینک پایگاه داده ی آماده برای تمرین شوید با صفحه ای اینچنینی روبرو می شوید:

پایگاه داده ی آماده ی ما - اساس کار ما در طول دوره همین پایگاه داده خواهد بود.
پایگاه داده ی آماده ی ما - اساس کار ما در طول دوره همین پایگاه داده خواهد بود.

در سمت راست این تصویر، قسمتی به نام your database وجود دارد. در این قسمت اطلاعات مربوط به پایگاه داده ی آماده ی شما قرار گرفته است؛ به طور مثال در قسمت customers نوشته است 91. این یعنی اطلاعات 91 مشتری در پایگاه داده ی ما موجود است. موارد این جدول را برایتان ترجمه می کنم:

  • Customers: به معنی مشتریان؛ این قسمت تعداد مشتریان ما و اطلاعات آن ها را نشان می دهد.
  • Categories: به معنی دسته بندی؛ این قسمت دسته بندی های مختلف ما را نشان می دهد، مثل لبنیات، نوشیدنی ها و غیره.
  • Employees: به معنی کارمندان؛ این قسمت تعداد کارمندان ما و اطلاعات آن ها را نشان می دهد.
  • OrderDetails: به معنی جزئیات سفارش؛ این قسمت جزئیات سفارش هر مشتری را نشان می دهد، مانند تعداد خرید، آیدی محصول و غیره.
  • Orders: به معنی سفارشات؛ این قسمت اطلاعات کلی سفارشات ما را نشان می دهد، مانند زمان خرید و غیره.
  • Products: به معنی محصولات؛ این قسمت تعداد محصولات ما و اطلاعات شان را نشان می دهد.
  • Shippers: به معنی ارسال کنندگان؛ این قسمت اطلاعات شرکت هایی را نشان می دهد که وظیفه ی ارسال محصولات ما را به عهده دارند.
  • Suppliers: به معنی تامین کننده ها؛ این قسمت اطلاعات شرکت هایی را نشان می دهد که محصولات خود را از آن ها می خریم.

نکته: اعداد روبروی هر کدام از این موارد نشان دهنده ی تعداد آن ها می باشد. به طور مثال اگر روبروی Shippers عدد 3 را داریم یعنی 3 شرکت پستی برای ارسال بسته ها و محصولاتمان در اختیار داریم.

خلاصه ی مقاله

در این قسمت با مفهوم کلی SQL به عنوان یک زبان سطح بالا آشنا شدیم و یک پایگاه داده ی آماده را در اختیار شما قرار دادیم که پایه و اساس کار ما در طول دوره خواهد بود. در قسمت بعد به توضیح مفاهیم مختلف از قبیل جدول، ستون، ردیف، فیلد و ... می پردازیم و با ساختار کلی دستورات SQL آشنا خواهیم شد. امیدوارم از این قسمت لذت برده باشید.

تمام فصل‌های سری ترتیبی که روکسو برای مطالعه‌ی دروس سری آموزش زبان SQL توصیه می‌کند:
نویسنده شوید
دیدگاه‌های شما (2 دیدگاه)

در این قسمت، به پرسش‌های تخصصی شما درباره‌ی محتوای مقاله پاسخ داده نمی‌شود. سوالات خود را اینجا بپرسید.

رویا
27 آذر 1401
قسمت نمایش فایل تمرینی اطلاعات سمت راست نمایش داده نمیشود.

در این قسمت، به پرسش‌های تخصصی شما درباره‌ی محتوای مقاله پاسخ داده نمی‌شود. سوالات خود را اینجا بپرسید.

زهره کریمی
09 دی 1399
با سلام ؛ دوره بسیار مفید و کاملی بود. با تشکر از شما

در این قسمت، به پرسش‌های تخصصی شما درباره‌ی محتوای مقاله پاسخ داده نمی‌شود. سوالات خود را اینجا بپرسید.