كيفية إنشاء الإجراءات المخزنة في PostgreSQL

Kyfyt Ansha Alajra At Almkhznt Fy Postgresql



باستخدام PostgreSQL، من الممكن إنشاء إجراءات مخزنة تحدد الإجراءات المختلفة التي يجب تنفيذها عند استدعائها. تتكون هذه الإجراءات من عبارات SQL التي تؤدي المهام المحددة في قاعدة البيانات الخاصة بك. على سبيل المثال، يمكنك إنشاء إجراء مخزن يقوم بتحديث القيم الموجودة في الجدول الخاص بك عند استدعائه.

تساعد الإجراءات المخزنة في تحسين قاعدة البيانات وتعزيز إمكانية إعادة الاستخدام. بدلاً من الاضطرار إلى تنفيذ نفس الاستعلام، يمكنك إنشاء المهمة كإجراء مخزن يمكنك الاتصال به عند الحاجة. سوف تتعلم كل شيء عن الإجراءات المخزنة بنهاية هذا المنشور.

العمل مع الإجراءات المخزنة في PostgreSQL

باعتبارك أحد مستخدمي PostgreSQL، ربما لاحظت أن وظائف PostgreSQL لا تنفذ المعاملات. في حين أنه من الممكن إنشاء معاملة، إلا أن الالتزام بها أو إعادتها إلى الحالة السابقة غير ممكن. ومع ذلك، يتم تجاوز هذه القيود باستخدام الإجراءات المخزنة.







إليك الصيغة الأساسية لإنشاء إجراء مخزن في PostgreSQL:



إنشاء أو استبدال الإجراء الإجراء_اسم (

المعلمة [المعلمات] data_type

)

لغة plpsql;

كما $$

يعلن

variables_if_any data_type

يبدأ

منطق

نهاية؛

$$

الأشياء الأساسية التي يجب ملاحظتها من بناء الجملة المحدد هي 'procedure_name' وهو الاسم الذي ستستخدمه للإجراء المخزن، والمعلمات التي ترغب في تضمينها وأنواع بياناتها، والمنطق الذي يتمثل بشكل أساسي في عبارات SQL.



دعنا نعطي ثلاثة أمثلة لمساعدتك على فهم كيفية إنشاء الإجراءات المخزنة في PostgreSQL.





المثال 1: إجراء مخزن لحساب مربع الرقم

في مثالنا الأول، قمنا بإنشاء إجراء مخزن يستخدم عبارة 'RAISE NOTICE' كوسيلة لطباعة المخرجات على الوحدة الطرفية. يأخذ الإجراء المخزن القيمة الصحيحة التي تعطيها له عند الاتصال به وحساب مربعه.

إليك كيفية إنشاء الإجراء المخزن:



نحن نسمي المعلمة لدينا باسم 'num1'، وهو عدد صحيح. بالنسبة للجزء المنطقي، نحدد كيفية الحصول على مربع 'num1' وتخزينه كمتغير مربع. عندما نقوم بتنفيذ الأمر، نحصل على إخراج 'CREATE PROCEDURE' الذي يؤكد أننا تمكنا من إنشاء الإجراء المخزن بنجاح.

المهمة التالية هي استدعاء الإجراء وإعطائه الوسيطة المتوقعة.

استدعاء الإجراء_اسم(الوسائط);

سوف تحصل على مخرجات CALL توضح أن الإجراء المخزن قد تم تنفيذه، ونحن نحصل على المخرجات المتوقعة والتي، في هذه الحالة، هي مربع الوسيطة التي أضفناها.

المثال 2: إجراء مخزن لإدراج القيم في إدخال جدول

يوضح المثالان التاليان كيفية إنشاء إجراء مخزن يعمل مع جدول قاعدة البيانات. فلنقم سريعًا بإنشاء جدول 'الطلاب' الذي سنعمل معه.

في هذا المثال، نقوم بإنشاء إجراء مخزن يسمح للمستخدم بإدراج القيم في الجدول الذي تم إنشاؤه حديثًا. لاحظ كيف نحدد المعلمات التي نتوقع إضافتها كوسيطات عندما نستدعي الإجراء المخزن. علاوة على ذلك، فإننا نحدد المنطق الذي يأخذ الوسائط المضافة وينفذ عبارة INSERT SQL إلى جدول 'الطلاب'.

يمكننا التحقق من الإجراءات المخزنة المتاحة عن طريق تشغيل الأمر التالي:

\دف

أول إجراء مخزن يمكننا رؤيته من المخرجات التالية هو 'add_student' الذي أنشأناه مسبقًا.

الآن، دعونا نستدعي الإجراء المخزن لتنفيذه. الصورة التالية توضح كيف أن لدينا جدول فارغ، لكننا قمنا باستدعاء الإجراء المخزن لإضافة الطالب الأول:

إذا أدرجنا القيم في جدولنا، لاحظ كيف أن الوسيطات التي أضفناها باستخدام أمر إجراء الاستدعاء هي قيم الطالب الأول في جدولنا. هذه هي الطريقة التي تقوم بها بإنشاء إجراء مخزن لإدراج القيم في جدول.

لاحظ أنه عند إنشاء الإجراء المخزن، يجب أن تتطابق المعلمات التي تحددها مع ما هو متوقع في الجدول الخاص بك لتجنب الأخطاء. علاوة على ذلك، يجب أن يتطابق نوع البيانات.

مثال 3: إجراء مخزن لتحديث إدخال جدول

لنبدأ الآن بإنشاء إجراء مخزن آخر يقوم بتحديث إدخال الجدول. إذا كنت ترغب في الحصول على طريقة سريعة لتحديث القيم في جدولنا، فيمكنك إنشاء إجراء تحديث مخزن على النحو التالي:

حدد العمود الذي تريد تحديثه باستخدام الكلمة الأساسية WHERE والقيمة الجديدة باستخدام الكلمة الأساسية SET. يجب عليك بعد ذلك إضافة الكلمة الأساسية COMMIT لمواصلة التغييرات.

لنستدعي إجراء التحديث المخزن ونضيف الوسيطات المتوقعة: 'student_id' والدورة التدريبية الجديدة.

إذا قمنا بإدراج الإدخالات في جدولنا، فيمكننا التحقق من أن لدينا الدورة التدريبية المحدثة للطالب المعين الذي استهدفناه. هذه هي الطريقة التي يعمل بها إجراء التحديث المخزن.

خاتمة

يمكنك إنشاء أي إجراء مخزن في PostgreSQL. ما عليك سوى فهم بناء الجملة الذي يجب اتباعه ثم تحديد المنطق الخاص بك للإجراء المخزن. ومن هناك، قم باستدعاء الإجراء المخزن وتحقق من تنفيذه كما هو متوقع. شرح هذا المنشور الإجراءات المخزنة في PostgreSQL وقدم أمثلة حول كيفية إنشائها.