يتم استخدام عبارة SQL DELETE لإزالة صفوف معينة من جدول مع الحفاظ على بنية الجدول سليمة. وهو يختلف عن DROP الذي يحذف الجدول بأكمله.
- يقوم بإزالة الصفوف بناءً على الشروط.
- يحتفظ بقيود مخطط الجدول والفهارس.
- يمكن حذف صف واحد أو كل الصفوف.
مثال: أولا سوف نقوم بذلك يخلق قاعدة بيانات SQL تجريبية وجدول سنستخدم فيه أمر SQL DELETE.
استفسار:
DELETE FROM Employees
WHERE EmployeeID = 5;
الإخراج:
تاريخ جافا سكريبت
- يقوم هذا الاستعلام بحذف الصف من جدول الموظفين حيث يكون معرف الموظف هو 5.
- تتم إزالة هذا السجل المحدد فقط؛ تبقى كافة الصفوف الأخرى دون تغيير.
بناء الجملة:
DELETE FROM table_name
WHERE some_condition;
- بعض_الشروط: شرط يستخدم لتصفية الصفوف التي تريد حذفها.
- اسم_الجدول: اسم الجدول الذي تريد حذف الصفوف منه.
ملحوظة: يمكننا حذف سجلات فردية أو متعددة باستخدام جملة WHERE؛ إذا تم حذفه، تتم إزالة جميع السجلات الموجودة في الجدول.
أمثلة على بيان SQL DELETE
افترض أننا أنشأنا جدولًا باسم GFG_Employee في SQL يحتوي على التفاصيل الشخصية للموظف بما في ذلك اسم المعرف والبريد الإلكتروني والقسم وما إلى ذلك كما هو موضح أدناه.
إنشاء جدول GFG_Employees (
معرف المفتاح الأساسي
الاسم فارتشار (20)
البريد الإلكتروني فارتشار (25)
قسم فارتشار(20)
);
أدخل في قيم GFG_Employees (قسم البريد الإلكتروني لاسم المعرف).
(1 "جيسي" "[email protected]" "تطوير")
(2 "برافين" "[email protected]" "HR")
(3 "يمكن" "[email protected]" "المبيعات")
(4 "ريثفيك" "[email protected]" "IT")
(5 "سوراج" "[email protected]" "ضمان الجودة")
(6 'أوم' '[email protected]' 'IT')
(7 "ناروتو" "[email protected]" "تطوير")؛
حدد * من GFG_Employeesمرحبا بالعالم مع جافا
الإخراج:
المثال 1: حذف سجل واحد
يمكننا استخدام عبارة DELETE مع شرط لحذف صف معين من الجدول. ال أين يضمن البند إزالة السجل المقصود فقط. يمكننا حذف السجلات المسماة Rithvik باستخدام الاستعلام أدناه:
استفسار:
DELETE FROM GFG_Employees
WHERE NAME = 'Rithvik';
الإخراج:
المثال 2: حذف سجلات متعددة
لحذف سجلات متعددة، يمكنك تحديد شرط يطابق عدة صفوف. لنحذف الصفوف من الجدول GFG_Employees حيث القسم هو "التطوير". سيؤدي هذا إلى حذف صفين (الصف الأول والصف السابع).
com.inttostr جافا
استفسار:
DELETE FROM GFG_Employees
WHERE department = 'Development';
الإخراج
المثال 3: حذف كافة السجلات من جدول
إذا أردنا حذف جميع السجلات من الجدول، فيمكننا حذف جملة WHERE أو بدلاً من ذلك استخدام عبارة DELETE مع علامة النجمة (*) للإشارة إلى جميع الصفوف.
استفسار:
DELETE FROM GFG_Employees;
Or
DELETE * FROM GFG_Employees;
الإخراج:
سيتم حذف كافة السجلات الموجودة في الجدول، ولا توجد سجلات متبقية لعرضها. سيصبح الجدول GFG_Employees فارغًا.
استرجاع عمليات الحذف
نظرًا لأن عبارة DELETE هي عملية DML، فيمكن إرجاعها عند تنفيذها في عبارة. إذا قمت بحذف السجلات عن طريق الخطأ أو كنت بحاجة إلى تكرار العملية، فيمكنك استخدام التراجع يأمر.
طريقة tostring جافا
استفسار:
START TRANSACTION;
DELETE FROM GFG_Employees WHERE department = 'Development';
-- If needed you can rollback the deletion
ROLLBACK;
توضيح: سيقوم أمر ROLLBACK بالتراجع عن التغييرات التي تم إجراؤها بواسطة عبارة DELETE بشكل فعال لاستعادة السجلات التي تم حذفها أثناء المعاملة.
إنشاء اختبار