PDA

View Full Version : تریگرآپدیت



Iran58
چهارشنبه 04 شهریور 1394, 07:27 صبح
سلام
چگونه می توانم یک تریگر بنویسم که هنگامیکه عمل ویرایش را انجام دادم فقط ستونی که تغییر داده داشته است را ثبت کنم
(تریگری که نوشته ام همه ستونها را ذخیره می کندولی من فقط می خواهم ستونهای که تغییر کرده اند را ثبت کنم و برای بقیه ستونها داده ای ثبت نشود)
باتشکر

Iran58
چهارشنبه 22 اردیبهشت 1395, 15:03 عصر
سلام
فرض کنیم یک جدول دارم حاوی چهار ستون ردیف ,نام ,نام خانوادگی و کدملی است
حال یک تریگر برای آپدیت می خواهم بنویسم که فقط هرکدام از این سه ستون تغییر کرد شماره ردیف ثبت شود ومقدار ستون تغییر کرده و برای مابقی آنها null ثبت شود
مثلا یک ردیف دارم
1 علی احمدی 0055555666
حال به
1 علی علوی 0055555666
تغییر پیدا میکند
می خواهم در در تریگر آپدیت
1 NULL علوی Null

ثبت شود
باتشکر

pashna
پنج شنبه 23 اردیبهشت 1395, 23:05 عصر
ALTER TRIGGER [TriggerName] ON [TableName]
AFTER UPDATE
AS
UPDATE [TableName]
SET Field1 = NULL ,
Field2 = NULL
WHERE KeyField = ( SELECT Inserted.KeyField
FROM Inserted
);