PDA

View Full Version : تریگر حذف و ارتباط بین دو جدول



DataMaster
پنج شنبه 17 آبان 1386, 11:42 صبح
سلام
من برای دو تا جدول ارتباط تعیین کردم(Master/Deatl هستن)
میخوام توی حذف رکورد اصلی در صورتی که فرزندی براش وجود داره پیامهای مناسبی رو به کاربر ارجاع بدم برای همین قبل از حذف یک تریگر گذاشتم
اما ظاهرا کنترلهای خود SQL Server قبل از اجرای تریگر عمل میکنند و پیام خطا میدن
روشی هست که من بتونم این مورد رو کنترل کنم؟؟
ممنون

AminSobati
پنج شنبه 17 آبان 1386, 12:04 عصر
دوست عزیزم،
فکر میکنم مکانیزم کار رو باید کمی تغییر بدین. مثلا اینکه:
شما یک FK Constraint داشته باشید بین این دو جدول، حالا وقتی از Parent چیزی حذف بشه که Child داره، خود SQL Server یک خطا Raise خواهد کرد. این خطا به کلاینت منتقل میشه و شما پیغام دلخواه رو به کاربر نمایش میدین. یا اینکه از TRY CATCH استفاده کنین برای عمل حذف، خطا رو بگیرین و خطای دلخواه رو با RAISERROR به کلاینت بفرستین