الفرق بين الحذف واسقاط في SQL

مؤلف: Laura McKinney
تاريخ الخلق: 1 أبريل 2021
تاريخ التحديث: 23 أبريل 2024
Anonim
شرح أمر UPDATE SET في SQL - أمر تحديث البيانات المخزنة في الجدول | دورة تعلم SQL و MySQL كاملة 15
فيديو: شرح أمر UPDATE SET في SQL - أمر تحديث البيانات المخزنة في الجدول | دورة تعلم SQL و MySQL كاملة 15

المحتوى


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

المحتوى: DELETE Vs DROP

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

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

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


تعريف الحذف

الحذف هو لغة معالجة البيانات (DDL) القيادة. يتم استخدام الأمر DELETE عندما تريد إزالته بعض أو جميع tuples من علاقة. إذا أين يتم استخدام جملة جنبا إلى جنب مع أمر DELETE ، وهو يزيل فقط تلك المجموعات التي تفي بشرط جملة WHERE.

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

بناء جملة أمر DELETE كالتالي:

حذف من علاقة_اسم حيث الشرط ؛

إذا قمت بربط جدولين باستخدام أ مفتاح غريب وحذف tuple من جدول مرجعي ثم تلقائيًا سيتم حذف tuple من جدول المراجع أيضًا للحفاظ على التكامل المرجعي.

للحفاظ على التكامل المرجعي ، لدى DELETE خياران سلوكيان ، بتقييد و تتالي. رفض RESTRICT حذف tuple إذا كان يشير إليها tuple مرجعية في جدول آخر. يسمح CASCADE بحذف المجموعة المرجعية التي تشير إلى حذف المجموعة.


تعريف DROP

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

بناء جملة الأمر DROP كالتالي:

DROP SCHEMA schema_name RESTRICT؛

DROP Table table_name CASCADE؛

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

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

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

الاختلافات الرئيسية بين DELETE و DROP في SQL

  1. يتم استخدام أمر DELETE لإزالة بعض أو كل المجموعات من الجدول. من ناحية أخرى ، يتم استخدام الأمر DROP لإزالة المخطط أو الجدول أو المجال أو القيود من قاعدة البيانات.
  2. DELETE هو أمر لغة معالجة البيانات ، بينما DROP هي أمر لغة تعريف البيانات.
  3. يمكن استخدام DELETE مع جملة WHERE ولكن ، لا يتم استخدام DROP مع أي أمر.
  4. يمكن التراجع عن الإجراءات التي تم تنفيذها بواسطة أمر DELETE ، ولكن ليس في حالة أمر DROP.
  5. نظرًا لأن أمر DELETE لا يحذف الجدول وبالتالي ، لا يتم تحرير أي مساحة ، بينما يحذف DROP الجدول بأكمله يحرر مساحة الذاكرة.


خاتمة:

يتم استخدام أمر DELETE لحذف الصفوف الموجودة داخل جدول ويتم استخدام أمر DROP لحذف الجدول الكامل نفسه.