![]() |
|
معلومة --- القوادح Triggers - نسخة قابلة للطباعة +- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb) +-- قسم : قسم قواعد البيانات (http://vb4arb.com/vb/forumdisplay.php?fid=40) +--- قسم : قسم مقالات SQL SERVER (http://vb4arb.com/vb/forumdisplay.php?fid=84) +--- الموضوع : معلومة --- القوادح Triggers (/showthread.php?tid=6618) |
معلومة --- القوادح Triggers - RaggiTech - 21-10-12 كاتب الموضوع : BADRMEDIA
نظراً لأهمية القوادح سنتكلم عن كيفية استخدامها ببساطة دون تعقيد أولاً ما هي Triggers ؟؟؟ القوادح هى عبارة عن مجموعة من الأوامر يتم تنفيذها كلما صدر الأمر المسبب للقادح وتستخدم القوادح أيضاً كشروط اضافية عندما لا تستطيع تكوين CONSTRAINT على جدول معين فتكون هى البديل لذلك والقوادح مثلها مثل الاجراءات المخزنة SP من حيث الديناميكية ولكن لها تخصص اكبر والمقصود بها الأوامر متى تنفذ القوادح تنفيذ عند تنفيذ الأمر المرتبطة به وهى ثلاث حالات Delete : حيث تختص هذه الجمله بالحذف. Update : حيث تختص هذه الجمله بالتعديل. Insert : حيث تختص هذه الجمله بالإضافة. معلومة --- القوادح Triggers - RaggiTech - 21-10-12 صيغة انشاء قادح Trigger كود : CREATE TRIGGER [TRIGGER NAME] ON [dbo].[Table Name] TRIGGER NAME = اسم القادح المراد انشاءه Table Name = اسم الجدول المطبق عليه القادح مثال على تطبيق قادح على جدول عندما تعدل حقل معين لا يعدل عندنا جدول اسمه : Class_Quant_Primary به حقل رقمى اسمه Quant_UA كتبت هذه القادح كود : CREATE TRIGGER [update_quant_prim] ON [dbo].[Class_Quant_Primary] for update asشرح القادح اعطيت اسم للقادح كتبت اسم الجدول المراد التنفيذ عليه اخبرته انه عند القيام بتعديل على الحقل Quant_UA يقوم باظهار رسالة تخبر المستخدم بعدم امكانية التعديل وكتبت سطر التراجع عن التعديل معلومة --- القوادح Triggers - RaggiTech - 21-10-12 هنقوم بتكوين قادح الان ليلغى الاضافة على نفس الجدول السابق نكتب هذا القادح كود : CREATE TRIGGER [insert_prim] ON [dbo].[Class_Quant_Primary] for insert asكل ما فى الأمر أننا غيرنا الأمر القادح من Update إلى Insert معلومة --- القوادح Triggers - RaggiTech - 21-10-12 وكذلك الأمر مع الحذف نغير الأمر فقط هنقوم بتكوين قادح الان ليلغى الاضافة على نفس الجدول السابق نكتب هذا القادح كود : CREATE TRIGGER [Delete_prim] ON [dbo].[Class_Quant_Primary] for Delete asطبعاً لازم نغير سم القادح باسم مختلف مع كل قادح ننشأه |