أهم أقسام المدونة

الصفحات

الأربعاء، 14 سبتمبر 2016

حذف الصفوف باستخدام الأمر DELETE


حذف الصفوف باستخدام الأمر DELETE:

تحذف هذه الجملة أيّ عدد تريده من الصفوف تبعا للشرط الذي تحدّده في المقطع WHERE.. والجملة التالية تريك كيف يمكن حذف كل الكتب التي نفدت:

DELETE FROM Books

WHERE Copies_No = 0

 

ملحوظة:
لبناء أمر الحذف السابق في باني الاستعلام، أضف الجدول Books إلى قسم المخطط، واضغط بزر الفأرة الأيمن في أي موضع خال من قسم المخطط، ومن القائمة الموضعية اضغط Change Type ومن القائمة الفرعية اضغط الأمر Delete.. ستجد أن جملة SQL المكتوبة قد تحولت إلى DELET بدلا من SELECT.
استخدم قسم المعايير Criteria Pane لإضافة اسم الحقل Copies_No، وضع في العمود Filter القيمة:
 = 3

 

والجملة التالية تحذف كل الكتب التي كتبها (عباس العقاد):

DELETE FROM Books

WHERE AuthorID = (SELECT ID

FROM Authors

WHERE Author = 'عباس العقاد')

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

وهناك طريقة أخرى لأداء نفس العملية، باستخدام الفقرة From لاختيار الجداول ووضع شروط الربط بينها باستخدام الفقرة WHERE أو طرق الربط المختلفة Joins.. دعنا نكتب المثال السابق باستخدام الربط الداخلي:

DELETE FROM Books

FROM Books INNER JOIN

             Authors ON Books.AuthorID = Authors.ID

WHERE (Authors.Author = 'عباس العقاد')

 وهو نفس ما يمكنك فعله بالجملة WHERE كالتالي:

DELETE FROM Books

FROM   Books, Authors

WHERE AuthorID = Authors.ID AND

Authors.Author = 'عباس العقاد'

 

ملحوظة:
لبناء أمر الحذف السابق في باني الاستعلام، اضغط بزر الفأرة الأيمن في أي موضع خال من قسم المخطط، ومن القائمة الموضعية اضغط Change Type ومن القائمة الفرعية اضغط الأمر Delete.
أضف الجدول Books أولا (ليتم الحذف منه) ثم أضف الجدول Authors ليقوم باني الاستعلام بتكوين فقرة الربط بينهما.
وفي قسم المعايير Criteria Pane اختر اسم الحقل Authors.Author من العمود Column وفي العمود Filter الخاص بهذا الحقل ضع الشرط:
= 'عباس العقاد'

 

من كتاب: من الصفر إلى الاحتراف برمجة قواعد البيانات في فيجوال بيزيك دوت نت ADO .NET.. للتنزيل:


 

ليست هناك تعليقات:

إرسال تعليق

ملحوظة: يمكن لأعضاء المدونة فقط إرسال تعليق.