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

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

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

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

delete from t1 where t1.mindex=old.id

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

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


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 2 ) ضيف كريم