تقنية

ما هو الإجراء المخزن؟


الإجراء المخزن هو مجموعة من لغة الاستعلام المنظمة (SQL) البيانات التي يمكن لبرامج متعددة إعادة استخدامها ومشاركتها لأداء مهام محددة.

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

فوائد استخدام الإجراءات المخزنة

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

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

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

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

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

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

https://www.youtube.com/watch؟v=t8ngx84ohfy

لماذا تستخدم الإجراءات المخزنة؟

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

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

الإجراء المخزن في SQL

الإجراءات المخزنة في Microsoft SQL Server يمكن قبول معلمات الإدخال – واحد أو أكثر – وإرجاع قيم متعددة من معلمات الإخراج. تنفيذ بيانات برنامج الإجراءات المخزنة عمليات في قاعدة البيانات وإرجاع قيمة الحالة إلى إجراء أو دفعة استدعاء.

يبدو أن بناء جملة الإجراءات المخزنة SQL مثل هذا:

CREATE PROCEDURE procedure_name
AS
sql_statement
GO;

هناك ثلاثة أنواع رئيسية من الإجراءات المخزنة في SQL:

  • إجراءات النظام. يُعرف أيضًا باسم الإجراءات المخزنة للنظام ، فهي تبدأ بالبادئة sp_ ويتم تخزينها جسديًا في قاعدة بيانات داخلية مخفية. تدعم هذه الإجراءات عادة وظائف SQL Server ويمكنها تنفيذ العديد من الأنواع من المهام. تظهر في مخطط SYS لكل نظام وفي قاعدة بيانات محددة من قبل المستخدم.
  • الإجراءات المعرفة من قبل المستخدم. تتم إعادة إنشاءها في قاعدة بيانات محددة من قبل المستخدم أو جميع قواعد بيانات النظام ، إلا عند استخدام قاعدة بيانات للقراءة فقط أو الموارد. تم تطويرها في Transact-SQL (T-SQL) أو هي إشارة إلى Microsoft. من المهم عدم استخدام البادئة sp_ للإجراءات المعرفة من قبل المستخدم نظرًا لأن هذه البادئة تستخدم فقط لإجراءات النظام.
  • الإجراءات المؤقتة. يتم تخزينها في TEMPDB ، وهناك نوعان: محلي وعالمي. تكون الإجراءات المحلية مرئية فقط لاتصال المستخدم الحالي ، في حين أن الإجراءات العالمية مرئية لأي مستخدم بعد إنشائها. بالإضافة إلى ذلك ، يتم حذف الإجراءات المحلية عند إغلاق الاتصال ، بينما يتم حذف الإجراءات المخزنة العالمية عند انتهاء الجلسة الأخيرة التي تستخدم هذا الإجراء.
رسم يوضح كيفية تشغيل إجراء مخزن.
كيفية تشغيل إجراء مخزن.

الإجراءات المخزنة في أوراكل

لغة قاعدة بيانات أوراكل ، PL/SQL، يتكون من إجراءات مخزنة يمكن استخدامها لإنشاء التطبيقات داخل قاعدة بيانات Oracle. مكونات PL/SQL هي إجراءات ووظائف وحزم مستقلة. تُعرف هذه المكونات مجتمعة باسم الإجراءات المخزنة ويتم تخزينها في قاعدة البيانات.

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

يتبع الإجراء المخزن في Oracle هيكل كتلة PL/SQL الأساسي ، والذي يتكون من التصريحي والقابل للتنفيذ و معالجة الاستثناء أجزاء.

الإجراء المخزن مقابل الوظيفة

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

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

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

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

أصبحت أنظمة NOSQL أكثر انتشارًا في السحابة ، حيث يقدم العديد من مقدمي الخدمات والبائعين السحابة. تعرف على مختلف أنواع قواعد بيانات NOSQL وإيجابياتهم وسلبياتهم.



Source link

زر الذهاب إلى الأعلى