الفرق بين الالتزام و ROLLBACK في SQL

مؤلف: Laura McKinney
تاريخ الخلق: 1 أبريل 2021
تاريخ التحديث: 1 قد 2024
Anonim
012- Oracle SQL Arabic Course  single row functions   number Functions  اوراكل ديفلوبر
فيديو: 012- Oracle SQL Arabic Course single row functions number Functions اوراكل ديفلوبر

المحتوى


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

دعونا نناقش الفرق بين عبارات Commit و ROLLBACK في SQL بمساعدة مخطط المقارنة الموضح أدناه.

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

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

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

تعريف الالتزام

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


بناء جملة عبارة COMMIT كالتالي:

ارتكب؛

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

تعريف ROLLBACK

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

بناء جملة ROLLBACK كالتالي:

تدحرج؛

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


  1. يتمثل الاختلاف الرئيسي بين عبارات COMMIT و ROLLBACK لـ SQL في أن تنفيذ عبارة COMMIT يجعل كل التعديلات التي تجريها المعاملة الحالية دائمة. من ناحية أخرى ، يؤدي تنفيذ ROLLBACK إلى محو جميع التعديلات التي تم إجراؤها بواسطة المعاملة الحالية.
  2. بمجرد تنفيذ بيان الالتزام ، لا يمكن أن يكون التعديل الذي أجراه المعاملة. ومع ذلك ، بمجرد تنفيذ عبارة ROLLBACK ، تصل قاعدة البيانات إلى حالتها السابقة.
  3. يتم تنفيذ الالتزام عند التنفيذ الناجح لبيانات المعاملة. ومع ذلك ، يتم تنفيذ ROLLBACK عندما لا يتم تنفيذ المعاملة بنجاح.

خاتمة:

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