در مدل رابطه‌ای داده‌ها، زبان ساختارمند پرسش‌ها یا اس‌کیوال یا سی‌کوال (Structured Query Language – SQL) زبانی است سطح بالا مبتنی بر زبان سطح پایین و ریاضی جبر رابطه‌ای که برای ایجاد، تغییر، و بازیابی داده‌ها و نیز عملیات بر روی آنها به‌کار می‌رود.زبان SQL به سمت مدل شی‌گرا – رابطه‌ای نیز پیشرفت کرده‌است.

تاریخچه SQL

منشأ اصلی سی‌کوال به مقالهٔ سال ۱۹۷۰ ادگار کاد تحت عنوان «مدل رابطه‌ای داده‌ها برای بانک‌های بزرگ داده‌های اشتراکی»بازمی‌گردد. در دههٔ ۷۰ گروهی از شرکت آی‌بی‌ام در شهر سان خوزه بر روی سیستم پایگاه داده‌های سیستم آر بدون توجه به این مقاله کار می‌کردند و زبان SEQUEL را به منظور عملیات و بازیابی اطلاعات ذخیره شده در سیستم آر ایجاد کردند. اگر چه اس‌کیوال ناشی از تلاشهای کاد بود اما دونالد چامبرلین و ریموند بویس به عنوان طراحان زبان SEQUEL شناخته می‌شوند.

سمینارهایی در زمینه فناوری بانک اطلاعاتی و مباحثاتی در مورد مزایای مدل رابطه‌ای جدید برگزار گردید. تا ۱۹۷۶ مشخص بود که آی‌بی‌ام که طرفدار جدی فناوری بانک اطلاعاتی رابطه‌ای بوده، توجه زیادی نسبت به زبان سی‌کوال دارد. تبلیغات در زمینه سیستم آر باعث جذب گروهی از مهندسین در منلو پارک در کالیفرنیا گردید. این گروه به این نتیجه رسیدند که تحقیقات آی‌بی‌ام منجر به یک بازار تجاری برای بانک‌های اطلاعاتی رابطه‌ای خواهد گردید.

در ۱۹۷۷ این گروه شرکتی بنام اینک (Inc) و رلیشنال سافتویر (Relational Software) تأسیس نمودند تا یک سامانه مدیریت پایگاه‌های داده رابطه‌ای بر اساس سی‌کوال بسازند. محصولی بنام اوراکلدر ۱۹۷۹ عرضه گردید، و اولین سامانه مدیریت پایگاه داده رابطه‌ای بوجود آمد. به این ترتیب محصول اوراکل باعث گردید اولین محصول آی‌بی‌ام برای مدت ۲ سال در بازار دچار رکود باشد. این محصول بر روی مینی کامپیوترهای وکس دیجیتال (VAx Digital) اجرا می‌شد که خیلی از کامپیوترهای بزرگ آی‌بی‌ام ارزان‌تر بودند.

امروزه این شرکت با نام اوراکل اولین فروشنده سیستم‌های مدیریت بانک اطلاعاتی رابطه‌ای است. استادان آزمایشگاه‌های کامپیوتر در دانشگاه برکلی کالیفرنیا نیز در نیمه دهه ۱۹۷۰ مشغول تحقیق در زمینه بانک‌های اطلاعاتی رابطه‌ای بودن (مانند تیم تحقیق آی‌بی‌ام)، گروه فوق نیز یک نمونه از سامانه مدیریت پایگاه داده رابطه‌ای ایجاد نمودند و سیستم خود را اینگرس (Ingres) نام نهادند.

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

در حالیکه اوراکل و اینگرسبرای ارائه محصولات تجاری در رقابت بودند، پروژه سیستم آر شرکت آی‌بی‌ام در تلاش بوده‌است که یک محصول تجاری با نام SQL/Data system (یا SQL/DS) عرضه نماید. آی‌بی‌ام موجودیت SQL/DS را در ۱۹۸۱ اعلام، و در ۱۹۸۲ شروع به عرضه محصول خود نمود. در سال ۱۹۸۳ آی‌بی‌ام یک نسخه SQL/DS را برای VM/CMS (سیستم‌عاملی که در کامپیوتر بزرگ آی‌بی‌ام غالباً استفاده شده بود)، اعلام نمود.

همچنین در سال ۱۹۸۳ شرکت آی‌بی‌ام، محصول دی‌بی‌تو را معرفی نمود که یک سامانه مدیریت پایگاه داده رابطه‌ای برای سیستم‌های بزرگ آن شرکت بود. دی‌بی‌تو تحت سیستم‌عامل وی‌ام‌اس (سیستم‌عامل مراکز کامپیوتری بزرگ) اجرا می‌شد. اولین نسخه دی‌بی‌تو در ۱۹۸۵ عرضه گردید، و مسئولین آی‌بی‌ام اعلام نمودند که این محصول یک برنامه استراتژیک برای تکنولوژی نرم‌افزاری آی‌بی‌ام می‌باشد. از آن تاریخ تاکنون دی‌بی‌تو سامانه مدیریت پایگاه داده رابطه‌ای شاخصی بوده و آی‌بی‌ام از آن حمایت نموده و زبان «سی‌کوال دی‌بی‌تو» استاندارد عملی زبان بانک اطلاعاتی بوده‌است.

حوزه و وسعت

بسیاری از اصطلاحات زبان اس‌کیوال تحت استاندارد بین‌المللی بوده، و در نتیجه، از آنها شبیه بقیه زبانهای استاندارد مثل محصولات شرکت اوراکل PL/SQL یا Sybase و SQL PL (مدل رویه‌ای) از شرکت آی‌بی‌ام می‌باشد.

اس‌کیوال برای کارهای ویژه و محدودی (گزارش گیری از داده‌ها در پایگاه داده‌های رابطه‌ای) طراحی شده‌است. بر خلاف زبانهای دستوری مثل بیسیک یا سی که برای حل مسائل طراحی شده، SQL زبانی بر پایه اعلان است. زبانهای توسعه یافته‌ای مثل PL/SQL به دنبال کامل کردن زبان به هدف ایجاد زبان برنامه‌نویسی با حفظ مزیت‌های SQL می‌باشد. شیوه دیگر کار این است که به کدهای زبانبرنامه‌نویسی اجازه دسترسی به پایگاه داده به کمک دستورهای SQL داده شود مثلاً PostgreSQL به توابعش اجازه می‌دهد که درون کدهای Perl, Tcl و C نوشته شوند. گاهی به شوخی گفته می‌شود که SQL نه ساخت یافته‌است، نه محدود به گزارش گیری‌ها و اصلاً یک زبان نیست!

 

نمایش قابل چاپ