إس كيو إل
عودة للموسوعةلغة الاستعلامات البنيوية (أوالبنائية) (بالإنجليزية: Structured Query Language أوSQL) (لغة قواعد البيانات)هي لغة برمجة غير إجرائية Non Procedural Language، وهي بذلك تختلف عن لغات البرمجة المعتادة مثل سي أوجافا، حيث حتى اللغات غير الإجرائية هي لغات متخصصة. ولذلك فإن هجريب لغة الاستعلامات البنائية هي لغة للتعامل والتحكم مع قواعد البيانات المترابطة من خلال التعامل مع تراكيب البيانات وإجراء عمليات إدخال البيانات والحذف والفرز والبحث والتصفية والتعديل وخلافه.
تاريخ تطور لغة الاستعلامات البنائية
في يونيو1970 نشر العالم البريطاني إدجار كود ورقة فهمية بعنوان "نموذج مترابط للبيانات في مستونادىت البيانات الضخمة المشهجرة A Relational Model of Data for Large Shared Data Banks" قدم فيها نموذجا لإنشاء وإدارة قواعد البيانات عهد باسم نموذج قاعدة البيانات المترابطة Relational Database Model، ووفقا لهذا النموذج يتم الاحتفاظ بالبيانات في جداول متفرقة ترتبط فيما بينها بعلاقات. حقق نموذج قاعدة البيانات المترابطة نجاحًا سريعًا بين المختصين، لكنه كان من الصعب التعامل مع هذا النموذج من خلال لغات البرمجة المألوفة آنذاك مثل لغة سي ولغة بيزيك، لذلك سعى المختصون في ابتكار لغة برمجة جديدة تكون قادرة على إنشاء قواعد البيانات والتعامل معها وفق نموذج قاعدة البيانات المترابطة. قامت جماعة من الباحثين في مختبرات شركة IBM بإنتاج أول لغة برمجة تحقق هذا الهدف وأطلقوا عليها الاسم SEQUEL وهذا اللفظ اختصار لعبارة اللغة الإنجليزية للاستعلامات البنيوية Structured English Query Language لكنهم تخلوا عن هذا الاسم سريعًا عندما اكتشفوا أنه علامة تجارية لشركة بريطانية تعمل في حقل الطيران واستبدلوه بالاسم الذي أصبح مستخدم حتى اليوم وهوهجريب لغة الاستعلامات البنائية SQL. قامت شركة IBM باستخدام هجريب لغة الاستعلامات البنائية في إنتاج عدد من نظم إدارة قواعد البيانات المترابطة وتوزيعها مثل النظام System R والنظام System/38 والنظام SQL/DS وأخيرًا النظام DB2. لكن النظام الذي حقق النجاح الأكبر هوالنظام الذي اعتمدته شركة أوراكل Oracle وحمل اسمها والذي طرحته لأول مرة عام 1979. منذ ابتكار لغة الاستعلامات البنيوية في مطلع السبعينات، خضعت للعديد من التعديلات والتطويرات، كما قامت الكثير من الشركات والمؤسسات البحثية بتصميم نسختها الخاصة من هجريب لغة الاستعلامات البنائية، ولمجابهة هذا الموقف قام المعهد الوطني الأمريكي للمعايير American National Standards Institute ANSI بإصدار أول نسخة معيارية من هجريب لغة الاستعلامات البنائية عام 1987 وهي التي عهدت باسم SQL1987، ثم توالت التعديلات والطبعات المعيارية، وحاليًا فإن اللغة المعيارية المعتمدة هي SQL2008.
هجريب لغة الاستعلامات البنائية
تهجرب لغة الاستعلامات البنائية من عدد من الحدثات المحجوزة، ويمكن تقسيم هذه الحدثات المحجوزة تبعًا لوظائفها التي تقوم بها إلى ثلاثة أقسام رئيسة هي:
- لغة تعريف البيانات (Data Definition Language (DDL
- لغة معالجة البيانات (Data Manipulation Language (DML
- لغة التحكم بالبيانات (Data Control Language (DCL
لغة تعريف البيانات (DDL)
لغة تعريف البيانات (بالإنجليزية: Data Definition Language DDL) هي مجموعة من الحدثات المحجوزة التي تقوم بإدارة الكائنات في قاعدة البيانات سواء بالإنشاء أوالتعديل أوالحذف وتشتمل هذه المجموعة على الحدثات المحجوزة التالية:
- التعديل في قاعد البيانات ALTER DATABASE
- التعديل في الجدول ALTER TABLE
- انشاء قاعدة بيانات CREATE DATABASE
- انشاء مفاتيح البحث CREATE INDEX
- انشاء الجدول CREATE TABLE
- حذف قواعد البيانات DROP DATABASE
- حذف مفاتيح البحث DROP INDEX
- حذف الجدول DROP TABLE
- اعادة تسمية الجدول RENAME TABLE
لغة معالجة البيانات (DML)
وهي اللغة الخاصة بالتعامل مع البيانات ذات نفسها داخل قواعد البيانات من استعلام (select) أوحذف بيانات (Delete) أوتحديث بيانات (update) أوادخال بيانات جديدة (Insert).
لغة التحكم بالبيانات (DCL)
وهي اللغة الخاصة بمنح المستخدمين صلاحيات معينة مثل :
- GRANT : وتستخدم لمنح المستخدمين صلاحيات معينة لأداء مهام معينة.
- REVOKE : وتستخدم لإلغاء الصلاحيات التي تم منحها بالأمر السابق.
ويمكن السماح للمستخدمين بمثل الصلاحيات الآتية:
- CONNECT
- SELECT
- INSERT
- UPDATE
- DELETE
- EXECUTE
- USAGE
انتقادات حول لغة الاستعلامات البنائية
وجهت الكثير من الانتقادات إلى لغة الاستعلامات البنائية، وجميع هذه الانتقادات تتمحور حول فكرة حتى لغة الاستعلامات البنائية قد صممت لتكون لغة غير إجرائية مخصصة لبرمجة قواعد البيانات المترابطة وهوما تحققه لغة الاستعلامات البنائية، إلا حتى بعض أدواتها تظهر قصور عن تحقيق هذه الفكرة، وقد عمل الكثير من الباحثين على معالجة هذه القصور، إلا حتى المنتقدين يكررون باستمرار حتى علة القصور ترجع إلى خلل في التصميم الأساسي للغة الاستعلامات البنائية وهوخلل لا يمكن معالجته لأنه جزء من مكونات لغة الاستعلامات البنائية الأساسية.
بدائل لغة الاستعلامات البنائية
اقترح منتقدي لغة الاستعلامات البنائية تصميم بدائل لها يتم فيها تفادي القصور الذي تعاني منه لغة الاستعلامات البنائية، وقد ضمت البدائل التي اقترحوها:
- IBM Business System 12 من شركة آي بي إم
- EJB-QL من شركة صن ميكروسيستمز
- لغة استعلامات الكائنات (بالإنجليزية: Object Query Language)
النظم التي تدعم لغة الاستعلامات البنائية
تصمم معظم نظم لفة قواعد البيانات المترابطة بحيث تكون متوافقة مع لغة الاستعلامات البنائية، ويعتبر التوافق مع النسخة المعيارية للغة الاستعلامات البنائية ANSI SQL من الميزات التي تحقق بها النظم شعبيتها. تضم هذه النظم عدد كبير من البرمجيات بعضها ذات سمعة كبيرة وبعضها الآخر قد لا يزيد عدد مستخدمية عن مطوريه وأصدقائهم. أبرز هذه النظم هي:
- أوراكل من الشركة المعروفة بنفس الاسم
- ماي إس كيوإل (بالإنجليزية: MySQL) من شركة ماي إس كيوإل إيه بي
- ميكروسوفت إس كيوإل سيرفر
- آي بي إم دي بي 2 من شركة آي بي إم
- Borland Interbase من شركة بورلاند
انظر أيضاً
- لغة استعلام
مراجع
- ^ "Mimer SQL, Built on Standards". Mimer SQL official website. Mimer Information Technology. 2009. مؤرشف من الأصل في 03 مايو2016.
- ^ "IBM PureData System for Analytics, Version 7.0.3". مؤرشف من الأصل فيعشرة ديسمبر 2019.
- ^ Reinsch, R. (1988). "Distributed database for SAA". IBM Systems Journal. 27 (3): 362–389. doi:10.1147/sj.273.0362.
وصلات خارجية
- اساسيات لغة الاستعلامات البنائية
- الفصل الثالث عشر من مرجع تشغيل MySQL حول لغة الآستعلامات البنائية
- صور وملفات صوتية من كومنز
- خط من ويكي الخط
التصنيفات: إس كيو إل, برمجيات آي بي إم, برمجيات متعددة المنصات, لغات استعلام, لغات برمجة تعريفية, لغات نمذجة البيانات, نظم إدارة قواعد البيانات, نظم إدارة قواعد بيانات علائقية, مقالات تحتوي نصا بالإنجليزية, صفحات بها وصلات إنترويكي, بوابة علم الحاسوب/مقالات متعلقة, بوابة برمجة الحاسوب/مقالات متعلقة, جميع المقالات التي تستخدم شريط بوابات, صفحات تستخدم خاصية P244, صفحات تستخدم خاصية P227, صفحات تستخدم خاصية P268