عبارة SQL DELETE

عبارة SQL DELETE

عبارة SQL DELETE

تُستخدم عبارة DELETE في SQL لحذف السجلات الموجودة في جدول. يمكن حذف سجل واحد، عدة سجلات، أو جميع سجلات الجدول حسب الحاجة.

بنية (Syntax) عبارة DELETE

DELETE FROM table_name
WHERE condition;

ملاحظة: انتبه جيدًا عند حذف السجلات! جملة WHERE هي التي تحدد أي السجلات سيتم حذفها. إذا حذفت جملة WHERE فسيتم حذف جميع السجلات من الجدول.

قاعدة البيانات التجريبية (Demo Database)

في الأمثلة التالية نستخدم جدولاً افتراضياً باسم Customers يحتوي على البيانات التالية:

CustomerID CustomerName ContactName Address City PostalCode Country
1 Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico
4 Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK
5 Berglunds snabbköp Christina Berglund Berguvsvägen 8 Luleå S-958 22 Sweden

مثال — حذف سجل واحد

DELETE FROM Customers
WHERE CustomerName = 'Alfreds Futterkiste';

حذف سجلات متعددة حسب شرط

DELETE FROM Customers
WHERE Country = 'Mexico';

حذف باستخدام JOIN

يمكن حذف سجلات مرتبطة بجدول آخر:

DELETE c
FROM Customers c
INNER JOIN Orders o ON c.CustomerID = o.CustomerID
WHERE o.OrderDate < '2025-01-01';

حذف جميع السجلات

يمكن حذف كل الصفوف من جدول بدون حذف الجدول نفسه:

DELETE FROM Customers;

استخدام Transactions للحذف الآمن

يمكنك حماية الحذف باستخدام المعاملات:

BEGIN TRANSACTION;

DELETE FROM Customers
WHERE Country = 'Mexico';

-- إذا كل شيء صحيح
COMMIT;

-- إذا حدث خطأ
ROLLBACK;

حذف الجدول بالكامل

DROP TABLE Customers;

نصائح عملية

  • استخدم WHERE دائمًا لتجنب حذف جميع السجلات بالخطأ.
  • جرب شرط WHERE باستخدام SELECT أولاً.
  • استخدم Transactions عند الحذف الجماعي.
  • اعمل نسخة احتياطية قبل الحذف الكبير.

تمرين

ما الهدف من عبارة SQL DELETE؟

  1. إضافة سجلات جديدة إلى جدول
  2. تعديل السجلات الموجودة في جدول
  3. حذف السجلات الموجودة في جدول ← الإجابة الصحيحة
  4. استرجاع سجلات من جدول

هاشتاجات

#SQL #SQLServer #Delete_Statement #Database #تعلم_SQL #استعلامات_SQL #برمجة_قواعد_البيانات #تعليم_SQL_بالعربي #SalemNet

تعليقات