Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Проблемы с триггерами на инсерт и апдейт / 3 сообщений из 3, страница 1 из 1
05.09.2002, 10:00:28
    #32048301
KleFF
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемы с триггерами на инсерт и апдейт
MS SQL Server 2000

Есть табличка, в ней две колонки Insert_date и Update_date. При внесении изменений в табличку, триггер вставляет дату в нужную колонку. А при инсерте другой триггер по идее должен вносить дату в колонку Insert_date. Только при внесении изменений все работает нормально, при инесерте срабатывают оба триггера и вносится дата в обе колонки. Как мне разделить инсерт и апдейт?

CREATE TRIGGER [INS_DATE] ON [TABLE1]
FOR INSERT
AS
update table1
set insert_date=getdate()
from table1 t, inserted i
where t.id=i.id





CREATE TRIGGER [UPDATE_DATE] ON [TABLE1]
FOR UPDATE
AS
update table1
set update_date=convert(char(24),getdate(),120)
from table1 t, inserted i
where t.id=i.id
...
Рейтинг: 0 / 0
05.09.2002, 10:21:17
    #32048308
GreenSunrise
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемы с триггерами на инсерт и апдейт
Можно поизвращаться с проверкой содержимого таблицы deleted в триггере.

А можно колонку Insert_date сделать с опцией default getdate() и оставить триггер только на update.
...
Рейтинг: 0 / 0
05.09.2002, 10:25:00
    #32048310
rmn_itam
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проблемы с триггерами на инсерт и апдейт
Триггер на апдейт должен выглядеть примерно так

CREATE TRIGGER [UPDATE_DATE] ON [TABLE1]
FOR UPDATE
AS
if not update(insert_date)
begin

update table1
set update_date=convert(char(24),getdate(),120)
from table1 t, inserted i
where t.id=i.id

end
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Проблемы с триггерами на инсерт и апдейт / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]