سلام.
من نگفتم 100% از Trigger استفاده نکنید، برخی اوقات بنا به دلائل مختلف مجبورید اینکارو کنید؛ مساله این هستش که اگر میتونید ازش پرهیز کنید، اینکارو کنید. در مورد شما، بنظر میرسه اینکار بسادگی در Business Logic Layer میسر باشه. به بیان دیگه، وقتی در کدتون متوجه میشید که فیلد مورد نظر از اون رکورد باید به صفر Update بشه، جای اینکه دستور UPDATE رو به SQL Server ارسال کنید، دستور DELETE رو ارسال کنید تا رکورد مورد نظر حذف بشه.
در مورد اون Trigger هم به گمان اصل مساله رو توضیح دادم، مشکل اصلی این هستش که فرض شده جدول DELETED حاوی یک Record هستش (در حالیکه میتونه اینطور نباشه). به گمانم با این توضیح میتونید Trigger نوشته شده رو تغییر بدید و ازش استفاده کنید. اما باز هم اگر موفق نشدید لطفا بگید تا اینکارو براتون انجام بدم.
موفق باشید.