لغة SQL المضمنة

لغة SQL المضمنة هي طريقة تجمع بين قوة الحوسبة للغة برمجة معينة وقدرات معالجة قواعد البيانات للغة SQL . تُكتب عبارات SQL المضمنة مباشرةً ضمن شفرة المصدر للبرنامج ، أي بلغة البرمجة المضيفة. يقوم معالج SQL مسبق مضمن بتحليل هذه العبارات واستبدالها باستدعاءات من مكتبة برمجية بلغة البرمجة المضيفة. ثم يقوم مُجمِّع البرنامج المضيف بتجميع مخرجات المعالج المسبق . يُمكّن هذا المبرمجين من تضمين عبارات SQL في برامج مكتوبة بلغات متعددة مثل C/C++ و COBOL و Fortran . يختلف هذا عن لغات البرمجة المشتقة من SQL التي لا تستخدم معالجات مسبقة منفصلة، ​​مثل PL/SQL و T-SQL .

حددت لجنة معايير SQL معيار SQL المضمن على مرحلتين: تم تعريف لغة نمطية تُسمى لغة الوحدات ، ثم تم اشتقاق معيار SQL المضمن من لغة الوحدات. [ 1 ] يُعرّف معيار SQL تضمين SQL على أنه SQL مضمن ، وتُسمى اللغة التي تُضمّن بها استعلامات SQL باللغة المضيفة . تُعد لغة C من اللغات المضيفة الشائعة. على سبيل المثال، تُسمى لغة C المضيفة وSQL المضمن Pro*C في أنظمة إدارة قواعد البيانات Oracle و Sybase ، وESQL/C في Informix ، و ECPG في نظام إدارة قواعد البيانات PostgreSQL . يمكن أيضًا تضمين SQL في لغات مثل PHP وغيرها.

يتوفر معيار SQL :2023 للشراء ويتضمن الفصل 21 الخاص بلغة SQL المضمنة وقواعد بناء الجملة الخاصة بها. [ 2 ]

أنظمة قواعد البيانات التي تدعم لغة SQL المضمنة

ألتيبيس

لغة C/C++
APRE هو برنامج تجميع SQL مضمن مقدم من شركة Altibase Corp. لخادم DBMS الخاص بها.

قاعدة بيانات IBM Db2

يدعم IBM Db2 لأنظمة Linux و UNIX و Windows لغة SQL المضمنة للغات C و C++ و Java و COBOL و FORTRAN و REXX، على الرغم من أن دعم FORTRAN و REXX قد تم إيقافه. [ 3 ]

برنامج IBM Informix

يدعم برنامج IBM Informix الإصدار 14.10 لأنظمة Linux و Unix و Windows لغة SQL المضمنة للغة C. [ 4 ]

خادم مايكروسوفت SQL

لغة C/C++
تم إيقاف دعم لغة SQL المضمنة للغة C اعتبارًا من Microsoft SQL Server 2008 على الرغم من أن الإصدارات السابقة من المنتج تدعمها. [ 5 ]

Mimer SQL

يدعم برنامج Mimer SQL لأنظمة Linux و macOS و OpenVMS و Windows لغة SQL المضمنة. [ 6 ]

لغة C/C++
يتم دعم لغة SQL المضمنة للغة C/C++ على أنظمة Linux و macOS و OpenVMS و Windows.
كوبول
يدعم نظام التشغيل OpenVMS لغة SQL المضمنة للغة COBOL.
فورتران
يدعم نظام التشغيل OpenVMS لغة SQL المضمنة للغة Fortran.

قاعدة بيانات أوراكل

آدا
أوقفت أوراكل رسميًا دعم لغة Pro*Ada في الإصدار 7.3. بدءًا من Oracle8، استُبدلت Pro*Ada بلغة SQL*Module، ولكن يبدو أنها لم تُحدَّث منذ ذلك الحين. [ 7 ] SQL*Module هي لغة برمجة نمطية تُقدِّم أسلوب برمجة مختلفًا عن SQL المضمن. تدعم SQL*Module معيار لغة Ada83 للغة Ada.
لغة C/C++
أصبح Pro*C هو Pro*C/C++ مع Oracle8. يتم دعم Pro*C/C++ حاليًا بدءًا من Oracle Database 11g .
كوبول
يدعم برنامج Pro*COBOL حاليًا بدءًا من قاعدة بيانات Oracle 11g .
فورتران
لم يعد يتم تحديث لغة Pro*FORTRAN اعتبارًا من Oracle8، لكن Oracle ستواصل إصدار تحديثات تصحيحية عند الإبلاغ عن الأخطاء وتصحيحها. [ 8 ]
باسكال
لم يتم إصدار Pro*Pascal مع Oracle8. [ 8 ]
PL/I
لم يتم إصدار Pro*PL/I مع Oracle8. ومع ذلك، استمر ظهور ملحق Pro*PL/I لدليل مُجمِّعات Oracle المسبقة في مكتبة وثائق Oracle حتى الإصدار 11g . اعتبارًا من الإصدار 12c، تمت إزالة Pro*PL/I من مكتبة وثائق Oracle. [ 8 ]

PostgreSQL

لغة C/C++
يُعد ECPG جزءًا من PostgreSQL منذ الإصدار 6.3.
كوبول
تقوم شركة Cobol-IT الآن بتوزيع برنامج مُترجم COBOL مُسبقًا لـ PostgreSQL
توفر شركة Micro Focus الدعم من خلال معالج OpenESQL المسبق الخاص بها

SAP Sybase

يدعم SAP Sybase ASE 15.7 لغة SQL المضمنة للغة C و COBOL كجزء من مجموعة أدوات تطوير البرامج Sybase . [ 9 ]

يدعم SAP Sybase SQL Anywhere لغة SQL المضمنة للغة C و C++ كجزء من نظام إدارة قواعد البيانات SQL Anywhere . [ 10 ]

يدعم SAP Sybase IQ لغة SQL المضمنة للغة C و C++ كجزء من نظام إدارة قواعد البيانات Sybase IQ . [ 11 ]

لغة SQL المضمنة من خلال لغات خاصة بالمجال

انظر أيضاً

مراجع

  1. "مفهوم لغة الوحدات النمطية" . دليل مبرمج SQL*Module للغة Ada، الإصدار 8.0، الفصل 1. مقدمة إلى SQL*Module . شركة أوراكل . تم الاطلاع عليه بتاريخ 14 يوليو 2008 .
  2. "معيار SQL لعام 2023، الفصل 21: SQL المضمن" . ISO/IEC 9075-2:2023 تكنولوجيا المعلومات - لغات قواعد البيانات - SQL - الجزء 2: الأساسيات (SQL/Foundation) . ISO . تاريخ الاسترجاع: 17 أغسطس 2023 .
  3. "قاعدة بيانات DB2 لأنظمة Linux و UNIX و Windows" . تطوير تطبيقات SQL المضمنة . IBM . تم الاطلاع عليه بتاريخ 10 أبريل 2009 .
  4. "خادم Informix الديناميكي" . IBM® Informix® ESQL/C . IBM . تم الاطلاع عليه بتاريخ 31-03-2020 .
  5. "ميزات محرك قاعدة البيانات المهملة في SQL Server 2008" . كتب SQL Server 2008 على الإنترنت (مارس 2009) . مايكروسوفت . تم الاطلاع عليه بتاريخ 10 أبريل 2009 .
  6. "لغة SQL المضمنة" . أحدث إصدار من دليل مبرمج Mimer SQL، لغة SQL المضمنة . Mimer SQL .
  7. "دعم لغة Ada في الإصدار 8" . ترحيل قاعدة بيانات Oracle9i، الإصدار 2 (9.2)، الفصل 5. التوافق وقابلية التشغيل البيني . شركة أوراكل . تم الاطلاع عليه بتاريخ 14 يوليو 2008 .
  8. 1 2 3 "بدائل اللغة" . دليل مبرمج مُترجم Pro*COBOL المسبق، الإصدار 8.0، الفصل 1. مقدمة . شركة أوراكل . تم الاطلاع عليه بتاريخ 14 يوليو 2008 .
  9. "EmbeddedSQL" . منتجات SAP Sybase . SAP Sybase. مؤرشف من الأصل بتاريخ 23-10-2009 . تم الاطلاع عليه بتاريخ 05-09-2012 .
  10. "SAP Sybase SQL Anywhere" . منتجات SAP Sybase . SAP Sybase. مؤرشف من الأصل بتاريخ 1 مايو 2013. تم الاطلاع عليه بتاريخ 2 مايو 2013 .
  11. "SAP Sybase IQ" . منتجات SAP Sybase . SAP Sybase. مؤرشف من الأصل بتاريخ 4 مايو 2013. تم الاطلاع عليه بتاريخ 2 مايو 2013 .