PL-SQL مقابل T-SQL
T-SQL (Transact SQL) هو امتداد لـ SQL تم تطويره بواسطة Microsoft. يتم استخدام T-SQL في Microsoft SQL Server. PL / SQL (اللغة الإجرائية / لغة الاستعلام الهيكلية) هي أيضًا امتداد إجرائي لـ SQL تم تطويره بواسطة Oracle. PL / SQL هي لغة برمجة رئيسية مدمجة في قاعدة بيانات أوراكل.
PL / SQL
PL / SQL هو امتداد إجرائي لـ SQL تم تطويره بواسطة Oracle. تتكون برامج PL / SQL من الكتل ، وهي الوحدة الأساسية في PL / SQL. يوفر PL / SQL دعمًا للمتغيرات والحلقات (حلقات WHILE و FOR و Cursor FOR loops) والعبارات الشرطية والاستثناءات والمصفوفات.يحتوي برنامج PL / SQL على جمل SQL. تتضمن عبارات SQL هذه SELECT و INSERT و UPDATE و DELETE وما إلى ذلك. لا يُسمح بعبارات SQL مثل CREATE أو DROP أو ALTER في برامج PL / SQL. يمكن أن تحتوي وظائف PL / SQL على عبارات PL / SQL وعبارات SQL وتقوم بإرجاع قيمة. من ناحية أخرى ، لا يمكن أن تحتوي إجراءات PL / SQL على عبارات SQL ولا تُرجع قيمة. يدعم PL / SQL أيضًا بعض مفاهيم البرمجة الموجهة للكائنات مثل التغليف والتحميل الزائد للوظيفة وإخفاء المعلومات. لكنها لا تدعم الميراث. في PL / SQL ، يمكن استخدام الحزم لتجميع الوظائف والإجراءات والمتغيرات وما إلى ذلك. تسمح الحزم بإعادة استخدام التعليمات البرمجية. قد يؤدي استخدام تعليمات PL / SQL البرمجية على خادم Oracle إلى تحسين الأداء ، نظرًا لأن خادم Oracle يقوم مسبقًا بتجميع تعليمات PL / SQL البرمجية قبل تنفيذها فعليًا.
T-SQL
T-SQL هو امتداد لـ SQL تم تطويره بواسطة Microsoft. يقوم T-SQL بتوسيع SQL عن طريق إضافة العديد من الميزات مثل البرمجة الإجرائية والمتغيرات المحلية والوظائف الداعمة لمعالجة السلسلة / البيانات.هذه الميزات تجعل T-SQL Turing كاملة. يحتاج أي تطبيق ، يحتاج إلى الاتصال بخادم Microsoft SQL ، إلى إرسال عبارة T-SQL إلى Microsoft SQL Server. يوفر T-SQL إمكانات التحكم في التدفق باستخدام الكلمات الرئيسية التالية: BEGIN and END و BREAK و CONTINUE و GOTO و IF و ELSE و RETURN و WAITFOR و WHILE. علاوة على ذلك ، يسمح T-SQL بإضافة عبارة FROM إلى عبارات DELETE و UPDATE. تسمح عبارة FROM بإدراج صلات في عبارات DELETE و UPDATE. يسمح T-SQL أيضًا بإدراج صفوف مضاعفات في جدول باستخدام جملة BULK INSERT. سيؤدي هذا إلى إدراج صفوف متعددة في الجدول عن طريق قراءة ملف خارجي يحتوي على بيانات. يؤدي استخدام BULK INSERT إلى تحسين الأداء بدلاً من استخدام عبارات INSERT منفصلة لكل صف يجب إدراجه.
ما الفرق بين PL / SQL و T-SQL؟
PL / SQL هو امتداد إجرائي لـ SQL المقدمة من Oracle ويتم استخدامه مع خادم قاعدة بيانات Oracle ، بينما T-SQL هو امتداد لـ SQL تم تطويره بواسطة Microsoft ويستخدم بشكل أساسي مع Microsoft SQL Server.توجد بعض الاختلافات بين أنواع البيانات في PL / SQL و T-SQL. على سبيل المثال ، يحتوي T-SQL على نوعين من البيانات يسمى DATETIME و SMALL-DATETIME ، بينما يحتوي PL / SQL على نوع بيانات واحد يسمى DATE. علاوة على ذلك ، للحصول على وظيفة وظيفة DECODE في PL / SQL ، يجب استخدام عبارة CASE في T-SQL. أيضًا ، بدلاً من عبارة SELECT INTO في T-SQL ، يجب استخدام عبارة INSERT INTO في PL / SQL. في PL / SQL ، هناك عامل تشغيل ناقص ، والذي يمكن استخدامه مع عبارات SELECT. في T-SQL يمكن الحصول على نفس النتائج باستخدام عبارة NOT EXISTS مع عبارات SELECT.