دليل كامل عن الإجراءات والوظائف في PL SQL
نشرت: 2023-01-30لغات البرمجة هي نظام لكتابة برامج الكمبيوتر. في حين أن العديد من لغات البرمجة تعتمد على النصوص ، فقد تكون لغات أخرى رسومية أيضًا. تساعد هذه اللغات المبرمجين على التواصل مع الكمبيوتر. لغة الاستعلام الهيكلية (SQL) هي إحدى لغات البرمجة التي تساعد في تخزين ومعالجة واسترجاع البيانات المخزنة في قاعدة بيانات علائقية. في دليل اليوم ، سنشارك تفاصيل حول تنفيذ كتل الأسماء (الإجراءات والوظائف) التي تعد برامج فرعية لـ PL SQL. لذلك ، إذا كنت تبحث عن دليل شامل حول الإجراء والوظيفة في PL SQL ، فقد وصلت إلى الصفحة الصحيحة. في هذا المستند ، إلى جانب تغطية موضوع الإجراء المخزن لـ PL SQL ، ستتعرف أيضًا على مثال إجراء PL SQL. ناهيك عن إجراء استدعاء PL SQL وإجراء إنهاء PL SQL ومثال دالة PL SQL التي لا تقل أهمية عن معرفة ما إذا كنت مبرمجًا ناشئًا. لذا ، دعنا نبدأ بدليلنا الشامل حول PL SQL.
محتويات
- دليل كامل عن الإجراءات والوظائف في PL SQL
- ما هو PL SQL؟
- ما هو الإجراء والوظيفة في PL SQL؟
- كيفية إنشاء إجراء ووظيفة مخزنين في PL SQL؟
- مزايا الإجراءات والوظائف المخزنة في PL SQL
- بناء الجملة لتكوين إجراء مخزن
- مثال على إجراء PL SQL
- بناء الجملة لتكوين وظيفة في PL SQL
- مثال دالة PL SQL
- ما هو إجراء الخروج من PL SQL؟
- الفرق بين المخزنة وإجراءات الوظيفة
دليل كامل عن الإجراءات والوظائف في PL SQL
هنا ، أظهرنا إجراءات ووظائف PL SQL مع أمثلة بالتفصيل.
ما هو PL SQL؟
- PL SQL هو نموذج قصير لملحقات اللغة الإجرائية لـ SQL .
- PL SQL هي لغة مبنية على الكتل للمبرمجين تساعدهم على الجمع بين قوة SQL مع العبارات الإجرائية.
- إنه امتداد إجرائي لشركة Oracle Corporation .
- هذه اللغة الإجرائية متاحة في قاعدة بيانات Oracle ، وقاعدة بيانات Times Ten في الذاكرة ، و IBM Db2 .
- في وقت التشغيل ، يحقق كل من PL / SQL و SQL الكفاءة المثلى من خلال التشغيل في نفس عملية الخادم .
- يضمن PL SQL المعالجة الفعالة وغير المضطربة لعبارات SQL من خلال تحسين قابلية النقل والأمان والمتانة لقاعدة البيانات.
- PL SQL تعني ببساطة إرشاد المترجم إلى ما يجب فعله من خلال SQL وحول كيفية القيام بذلك من خلال طريقته الإجرائية .
- يوفر PL SQL مزيدًا من التحكم للمبرمجين باستخدام الحلقات والظروف والمفاهيم الموجهة للكائنات .
ما هو الإجراء والوظيفة في PL SQL؟
- يحتوي PL SQL على برنامجين فرعيين ، يُعرفان بالإجراءات والوظائف .
- عادة ، يتم استخدام إجراء لتنفيذ إجراء ووظيفة لحساب قيمة .
- تحتوي البرامج الفرعية في PL SQL على جزء توضيحي وجزء قابل للتنفيذ وجزء اختياري للتعامل مع الاستثناءات .
- يمكن إنشاء هذه البرامج الفرعية وحفظها في قاعدة البيانات ككائنات قاعدة بيانات .
- تقوم البرامج الفرعية للإجراء والوظيفة في PL SQL بإرجاع قيمة واحدة تُستخدم أساسًا لحساب القيمة وإرجاعها .
- هذه البرامج الفرعية هي ببساطة مجموعة من عبارات PL / SQL و SQL التي يمكنها تنفيذ مهمة محددة .
كيفية إنشاء إجراء ووظيفة مخزنين في PL SQL؟
عند كتابة كتلة من التعليمات البرمجية لإجراء أو وظيفة PL SQL المخزنة ، يتم تجميعها بواسطة محرك Oracle. بمجرد تجميعها ، يتم تخزينها ككائن قاعدة بيانات. يتكون الإجراء المخزن أو مجموعة وظائف التعليمات البرمجية من ثلاثة أجزاء:
- الجزء التعريفي : في هذا الجزء ، يتم التصريح عن المتغيرات أو الثوابت أو المؤشر أو الاستثناءات التي سيتم استخدامها بواسطة الإجراء أو الوظيفة.
- الجزء القابل للتنفيذ : في هذا الجزء ، تتم كتابة تعريف الإجراء أو الوظيفة التي تم إنشاؤها. يتكون هذا الجزء أيضًا من عبارات PL / SQL أو SQL لتعيين القيم ومعالجة البيانات والتحكم في التنفيذ.
- جزء معالجة الاستثناء : هذا الجزء الأخير اختياري وفيه تتم كتابة الاستثناءات المتوقعة التي قد تظهر أثناء تنفيذ الكود المكتوب في الجزء القابل للتنفيذ.
مزايا الإجراءات والوظائف المخزنة في PL SQL
قبل أن نكشف عن مثال إجراء PL SQL ، يجب أولاً التعرف على مزايا البرامج الفرعية للإجراء والوظيفة.
- تحسين أداء قاعدة البيانات : يساعد محرك أوراكل في التجميع التلقائي. أيضًا ، عند إجراء إجراء أو وظيفة استدعاء PL SQL ، يقوم محرك Oracle بتحميل التعليمات البرمجية المترجمة في SGA ، منطقة النظام العالمية ، مما يساعد في التنفيذ بشكل أسرع.
- قابلية إعادة الاستخدام وعدم التكرار : لا يمكن كتابة عدد سطور التعليمات البرمجية بشكل متكرر لأنه يمكن استدعاء نفس كتلة التعليمات البرمجية لإجراء أو وظيفة بأي عدد من المرات على بيانات متعددة.
- الأمان : يتم الحفاظ على أمان قاعدة البيانات أيضًا باستخدام الإجراءات أو الوظائف المخزنة لأنها تساعد في التحكم في الاستخدام والوصول إليها من خلال منح الإذن للمستخدمين. على الرغم من ذلك ، لا يتم منح إذن بتحرير قاعدة البيانات أو معالجتها للمستخدمين.
- التكامل : ميزة أخرى لاستخدام إجراء أو وظيفة PL SQL المخزنة هي أنها تضمن التكامل حيث يتم تخزينها ككائنات قاعدة بيانات بواسطة محرك أوراكل.
- حفظ الذاكرة: من بين الفوائد العديدة للإجراءات أو الوظائف المخزنة أنها تشترك في الذاكرة مما يساعد في حفظ الذاكرة كنسخة واحدة من إجراء أو وظيفة يمكن تحميلها بواسطة عدد من المستخدمين الذين لديهم الإذن للقيام بالمثل.
اقرأ أيضًا: كيفية إصلاح جافا سكريبت: باطل (0) خطأ
بناء الجملة لتكوين إجراء مخزن
يمكنك إلقاء نظرة على بناء الجملة أدناه المستخدم لإنشاء إجراء مخزن في Oracle:
إنشاء أو استبدال الإجراء <الإجراء_اسم> (<variable_name> IN / OUT / IN OUT <datatype> ، <variable_name> IN / OUT / IN OUT <datatype> ، ...) IS / AS إعلان متغير / ثابت ؛ يبدأ - جسم البرنامج الفرعي PL / SQL ؛ استثناء - كتلة معالجة الاستثناءات ؛ END <الإجراء_الاسم> ؛
في الكود أعلاه:
- يمثل اسم الإجراء اسم الإجراء.
- يمثل Variable_name اسم المتغير المستخدم في الإجراء المخزن.
- يمثل إجراء إنشاء أو استبدال كلمة أساسية تستخدم لتحديد اسم الإجراء المراد إنشاؤه.
- تمثل البداية والاستثناء والنهاية الكلمات الأساسية المستخدمة للإشارة إلى إنشاء أقسام مختلفة من الإجراء.
- يمثل IN / OUT / IN OUT أوضاع المعلمات حيث يشير IN إلى وضع READ ONLY الذي يستخدم للمتغير الذي سيقبل من خلاله القيمة من المستخدم. هذا هو وضع المعلمة الافتراضي.
- يشير OUT إلى وضع WRITE ONLY الذي يستخدم لمتغير يقوم بإرجاع القيمة إلى المستخدم.
- يشير IN OUT إلى وضع READ و WRITE الذي يستخدم لمتغير يقبل قيمة أو يرجع قيمة إلى المستخدم.
- يمثل <procedure_name> نهاية لتعريف الإجراء. يمكنك أيضًا ببساطة استخدام END في مكانها.
مثال على إجراء PL SQL
بالنسبة لرمز الإجراء أدناه ، إليك مثال بسيط يوضح بوضوح استخدام الإجراء المخزن لإضافة رقمين:
ضبط خرج الخادم على ؛ إنشاء أو استبدال الإجراء مجموع (حيث رقم IN ، رقم ب IN) هو رقم c ؛ يبدأ ج: = أ + ب ؛ dbms_output.put_line ('مجموع رقمين =' || ج) ؛ مجموع النهاية ؛
في حالة استدعاء الإجراء ، سيتم تنفيذ الكود التالي:
ضبط خرج الخادم على ؛ يعلن عدد x رقم ص يبدأ س: = & س ؛ ص: = & ذ ؛ مجموع (س ، ص) ؛ نهاية؛ أين: أدخل قيمة x: 10 أدخل قيمة ص: 20 مجموع رقمين: 30
تم إنشاء إجراء PL SQL بنجاح.
بناء الجملة لتكوين وظيفة في PL SQL
الآن بعد أن أصبحت على دراية بكيفية إنشاء بناء جملة للإجراء المخزن ومثاله ، فقد حان الوقت لإلقاء بعض الضوء على إنشاء وظائف في PL / SQL:
إنشاء أو استبدال وظيفة <function_name> (<variable_name> IN <datatype> ، <variable_name> IN <datatype>، ...) RETURN <datatype> IS / AS إعلان متغير / ثابت ؛ يبدأ - جسم البرنامج الفرعي PL / SQL ؛ استثناء - كتلة معالجة الاستثناءات ؛ النهاية <function_name> ؛
في الكود أعلاه:
- يمثل Function_name اسم الوظيفة.
- Variable_name يمثل اسم المتغير للمتغير المستخدم في الوظيفة.
- تمثل وظيفة إنشاء أو استبدال الكلمة الأساسية المستخدمة لاسم الوظيفة المراد إنشاؤها.
- يمثل IN وضع READ ONLY الذي يستخدم لمتغير يقبل من خلاله القيمة من المستخدم. هذه هي المعلمة الافتراضية.
- يمثل الإرجاع كلمة أساسية متبوعة بنوع بيانات يحدد نوع البيانات للقيمة التي ستعيدها الوظيفة.
اقرأ أيضًا: إصلاح فشل الأمر مع رمز الخطأ 1 Python Egg Info
مثال دالة PL SQL
فيما يلي مثال على وظيفة PL SQL التي توضح استخدام الوظيفة لإضافة رقمين:
ضبط خرج الخادم على ؛ إنشاء أو استبدال وظيفة مجموع (رقم داخلي ، ب في رقم) رقم الإرجاع هو رقم ج يبدأ ج: = أ + ب ؛ عودة ج ؛ نهاية؛
في حالة استدعاء الدالة sum ، سيتم تنفيذ الكود التالي:
ضبط خرج الخادم على ؛ يعلن رقم 1 رقم 2 رقم النتيجة يبدأ no1: = & no1؛ no2: = & no2؛ النتيجة: = Sum (no1، no2) ؛ dbms_output.put_line ('مجموع رقمين =' || نتيجة) ؛ نهاية؛ أين: أدخل قيمة لـ no1: 5 أدخل قيمة لـ no2: 5 مجموع رقمين: 10
تم إنشاء إجراء PL SQL بنجاح.
اقرأ القسم التالي للتعرف على إجراءات الخروج من PL SQL.
ما هو إجراء الخروج من PL SQL؟
يساعد الخروج عندما تخرج العبارة من التكرار الحالي للحلقة بمجرد استيفاء الشرط في جملة WHEN ، وتنقل عنصر التحكم إلى نهاية الحلقة الجارية حاليًا. لا يمكن استخدام عبارات Exit خارج الحلقات وهي مخصصة للخروج من حلقة إما باستخدام عبارات Exit و Continue أو استخدام عبارات Exit when و Continue when بشكل مشروط.
الفرق بين المخزنة وإجراءات الوظيفة
الآن بعد أن أصبحت على دراية بالإجراء والوظيفة في PL SQL ، فقد حان الوقت أخيرًا لمعرفة الفرق الأساسي بين الاثنين أيضًا:
- قد يعيد أو لا يقوم الإجراء المخزن بإرجاع قيمة إلى الجزء المستدعي من البرنامج بينما تقوم الوظيفة بإرجاع قيمة إلى الجزء المستدعي من البرنامج.
- يُرجع الإجراء المخزن قيمة باستخدام معلمة OUT بينما تُرجع الدالة القيمة باستخدام RETURN.
- يستخدم الإجراء المخزن معلمة IN ، OUT ، IN OUT بينما تستخدم الوظيفة معلمة IN فقط.
- لا يحدد الإجراء المخزن نوع البيانات القيمة إذا كانت ستعود بعد إجراء استدعاء لها بينما تحدد الوظيفة نوع البيانات للقيمة التي ستعود بعد إجراء استدعاء لها.
- لا يمكن استدعاء الإجراء المخزن من كتلة وظيفة الكود بينما يمكن استدعاء الوظيفة من كتلة الإجراء الخاصة بالشفرة.
موصى به:
- ذاكرة DDR4 مقابل ذاكرة DDR5: أيهما أفضل للألعاب؟
- ما هي أنواع اللوح؟
- كيفية تحليل النص
- 4 طرق لتقسيم السلسلة بواسطة محدد في SQL
نأمل أن يكون مستندنا الخاص بالإجراء والوظيفة في PL SQL مفيدًا وناجحًا في الإجابة على جميع شكوكك حول PL SQL والبرامج الفرعية والإجراءات والوظيفة وإجراءات الخروج من PL SQL والمزيد. إذا ساعدناك بأي شكل من الأشكال أو كان هناك المزيد من الاستفسارات من جانبك ، فالرجاء ترك تعليقاتك أدناه لإعلامنا.