delphi4arab منتديات دلفي للعرب
كيف استخدم Triggers لحذف سجلات الابناء عند حذف الأب - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15)
+--- الموضوع : كيف استخدم Triggers لحذف سجلات الابناء عند حذف الأب (/showthread.php?tid=4505)



كيف استخدم Triggers لحذف سجلات الابناء عند حذف الأب - CMT-10 - 03-09-2012

السلام عليكم
لاحظوا هذا الترايقر (Triggers) هنا
كود :
delete from M2 where (M2.mindex = M1.[ID]);
انه ينفذ بالحدث after delete للجدول M1 وهو لا يستطيع التعرف على الجدول M2
حيث يطلب حذف الابناء في الجدول الثاني بمعلومية الانديكس للحقل ID وايضا Mindex
المشكلة بهذا انه لا يستطيع التعرف على الجدول الثاني أي وهو M1 ولا اي حقل يتبعه .
ما الطريقة لتفادي هذه المشكلة ؟


كيف استخدم Triggers لحذف سجلات الابناء عند حذف الأب - Lam.Abdeldjalil - 12-10-2012

و عليكم السلام و رحمة الله

أسهل حل (دون إستخدام الـTriggers ): أنشئ المفتاح الخارجي بالخاصية on delete CASCADE

ما هي قاعدة البيانات المستخدمة ؟


كيف استخدم Triggers لحذف سجلات الابناء عند حذف الأب - CMT-10 - 20-05-2013

ليس عندي قاعدة ببيانات محددة انا استخدم الفايربيرد والاسكيولايت مثلا

على العموم وجدت الحل وهو كالتالي:

delete from t1 where t1.mindex=old.id

في الحدث before felete للجدول الاب

لاحظ انهم يستخدمون العبارة old للدلالة على القيمة القديمة و new للدللالة على العبارة الجديدة