الفرق بين الزناد والإجراءات

مؤلف: Laura McKinney
تاريخ الخلق: 1 أبريل 2021
تاريخ التحديث: 26 أبريل 2024
Anonim
ما هى نقاط الزناد trigger points  (الأبهر) وطريقة علاج الم الابهر طبيا
فيديو: ما هى نقاط الزناد trigger points (الأبهر) وطريقة علاج الم الابهر طبيا

المحتوى


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

دعنا نناقش بعض الاختلافات بين المشغِّل والإجراءات بمساعدة مخطط المقارنة الموضح أدناه.

  1. رسم بياني للمقارنة
  2. تعريف
  3. الاختلافات الرئيسية
  4. خاتمة

رسم بياني للمقارنة

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


تعريف الزناد

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

الزناد يمكن الاحتجاج ردا على DDL عبارات (حذف أو إدراج أو تحديث) ، أو DML عبارات (حذف أو إدراج أو تحديث) أو ، إلى بعض عمليات قاعدة البيانات (الخادم ، تسجيل الدخول ، LOGOFF ، STARTUP ، أو إيقاف التشغيل).

يتكون المشغل من ثلاثة مكونات كما هو موضح أدناه:

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

تتم مناقشة الشكل العام لإنشاء حدث أدناه:


إنشاء TRIGGER قبل بعد حالة العمل ؛

هنا ، الشرط هو اختياري.

تعريف الإجراءات

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

الإجراءات مفيدة في الحالات التالية:

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

دعونا نناقش الشكل العام لإنشاء إجراء:

إنشاء عملية () عائدات ;

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

مكالمة () ;

  1. الفرق الأساسي بين المشغل والإجراء هو أن المشغل هو عبارة يتم استدعاءها تلقائيًا عند وقوع حدث. من ناحية أخرى ، يتم استدعاء الإجراء كلما كان ذلك مطلوبًا.
  2. يمكن للمرء تحديد الإجراء داخل الزناد. ولكن ، لا يتم تعريف المشغل داخل إجراء ما لأنه يجب استدعاء المشغل تلقائيًا عند حدوث أي حدث.
  3. يمكننا تمرير المعلمات إلى الإجراءات ، لكن لا يمكننا تمرير المعلمات لإطلاقها حيث لا يتم التذرع بها من قبلنا.
  4. يمكن أن يُرجع الإجراء قيم المعلمات أو الكود ، ولكن لا يمكن للمشغل ذلك.

خاتمة:

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