تریگر (Trigger) چیست ؟
Trigger نوعی رویه ذخیره شده است که پس از یک رویداد اجرا می شود ، برخلاف Stored Procedure که حتما باید فراخوانی شود Trigger ها قابل فراخوانی نبوده و به صورت خودکار در واکنش به اعمال Insert , Update , Delete (قبل یا بعد از تراکنش) اجرا می شوند . واضح است که چنین رویه بر خلاف SP نمیتواند پارامتر ورود و خروجی بپذیرد و اطلاعات خود را از رکورد مورد نظر (رکوردی که Insert , Update یا Delete بر روی آن صورت گرفته که اصطلاحا Updated , Inserted و Deleted خوانده می شود) مهمترین کاربر Trigger ها به شرح زیر است :
برای ایجاد یک Trigger مطابق شکل زیر عمل کنید:
همانطور که ملاحظه می کنید فرمت یک Trigger در سمت راست نمایش داده شده است ، پس از واژه Create trigger نام Trigger ذکر شده و سپس واژه On و پس از آن نام جدولی که مد نظر ماست ذکر می شود ، سپس واژه After و یکی از تراکنش های Insert , Delte یا Update و سپس کدها ما پس از Begin قرار خواهد گرفت . برای نمونه کد مثال اول را به صورت زیر می نویسیم :
از این پس هر رکوردی از جدول TBLUsersحذف شود تمام رکوردهای جدول TBLBlogs نیز حذف خواهد شد البته در این مثال میتوانستیم از Relation ها جهت این عمل استفاده کنیم ولی در بسیاری از شرایط بین بسیاری از جداول Relation وجود ندارد ولی ما میخواهیم تراکنش ها روی سایر جداول نیز تاثیر بگذارند ، بنابراین نیاز به Trigger ها امری مشخص است . برخی از برنامه نویسان به جای استفاده از Trigger این اعمال را در لایه Bussiness Logic انجام می دهند (مثلا پس از یک تراکنش یک Query دیگر اجرا می کنند ) ، این کار با افزایش تعداد تراکنش ها باعث افت کارایی سیستم خواهد شد . برای مشاهده مثال های بیشتر میتوانید صفحه زیر را مطالعه بفرمایید : http://msdn.microsoft.com/en-us/library/aa258254%28SQL.80%29.aspx
![]() مرتبط با موضوع : مقدمه ای بر RavenDB - قسمت دوم [چهارشنبه، 16 آذر ماه ، 1390] مقدمه ای بر RavenDB - قسمت اول [چهارشنبه، 16 آذر ماه ، 1390] مشکل دیتابیس در سرورهای اشتراکی [سه شنبه، 26 مهر ماه ، 1390] مقدمه ای بر پروتکل های دسترسی به داده ها و Open Data Protocol [شنبه، 18 تير ماه ، 1390] جنرال موتورز مرکز داده 130 ميليون دلاري راه اندازي ميکند [شنبه، 21 خرداد ماه ، 1390] پایگاه داده ها چیست؟ [شنبه، 23 مرداد ماه ، 1389] نحوه اتصال پایگاه داده به دلفی [دوشنبه، 18 مرداد ماه ، 1389] نمایه سازی تصویر در پایگاههای اطلاعاتی ( قسمت اول ) [پنجشنبه، 6 خرداد ماه ، 1389] نمایه سازی تصویر در پایگاههای اطلاعاتی (قسمت دوم ) [پنجشنبه، 6 خرداد ماه ، 1389] اطلاعات خود را در مورد بانک های اطلاعاتی بهینه کنید [سه شنبه، 14 ارديبهشت ماه ، 1389] |
آخرین مقالات
پربیننده ترین مقالات
مقالات تصادفی
امتیاز دهی به مطلب
تعداد آراء: 0 انتخاب ها
|
