ورود

View Full Version : راهنمایی در مورد Trigger



digimohammad
شنبه 19 اسفند 1391, 08:15 صبح
با سلام خدمت همه دوستان.
بنده با تریگر آشنا نیستم ، یعنی آشنایی من در حد خواندن چند مطلب روی اینترنت هست که زیاد مفهومی نبود. اگه ممکنه کسی در mysql یه راهنمایی ساده و کاربردی به بنده بکنه تا بتونم یه آزمایش موفق انجام بدم. چون اگه یک مثال رو درست انجام بدم دیگه همه چیز حله !

چیزی که تا حالا از تریگر متوجه شدم اینه که:
با استفاده از تریگر میشه به صورت خودکار مقادیر یک فیلد رو در دیتابیس و در یک جدول دیگه تغییر داد، مثلا اگر رکوردی در جدول 1 وارد شد ، مقدار یک رکورد دیگه در جدول 2 ، بعد یا قبل از عمل insert به روز میشه.

من سعی کردم از روی اموزشهایی که خوندم این کار رو انجام بدم اما هیچ تغییری ایجاد نمیشد. ممنون میشم یه لطفی بکنید یاد بگیرم.

سعید صابری
شنبه 19 اسفند 1391, 13:33 عصر
تریگر چیز خاصی نیست تنها نکته ای که داره به قول شما به صورت اتوماتیک اینه که در 6 حالت اتفاق می افته قبل و بعد INsert,Update,delete.البته این حالت های به انتخاب شماست و فقط می تونید در یک تریگر یک حالت انتخاب کنید برای حالتهای دیگر یک تریگر جداگانه بنویسید مثلا برای رویداد AFTER insert یعنی بعد از که اینسرت انجام شد.پس اتوماتیکی در کار نیست! یعنی وقتی شما تعیین می کنید BEFORE INSERT تا رکوردی Insert نشه تریگر اجرا نخواهد شد
شکل کلی دستور

DELIMITER $$

CREATE

TRIGGER TriggerName BEFORE/AFTER INSERT/UPDATE/DELETE
ON `<Table Name>`
FOR EACH ROW BEGIN

END$$

DELIMITER ;


حالا شما بین begin و end هر کد استاندارد Mysql را می تونید بنویسید.