Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Триггеры в MsSQL [D7, MSSQL]


Страницы:   1 2

NotGooDP ©   (2006-09-07 13:35:00) 

Здравствуйте!
Подскажите пожалуйста каким образом в триггер можно передать данные о записе редакитруемой в данный момент
т.е.
триггер вызваеться при редактировании записи и в другую таблицу передает данные до начала редактирования


CREATE TRIGGER Bef_Update ON Table_ELD For Update as
INSERT History_Table
VALUES(здесь должны быть данные редактируемой таблицы.,GETDATE ( ), USER)


NotGooDP   (2006-09-07 15:09:00) [21]

Всем спасибо, сейчас попробую.


evvcom   (2006-09-07 14:32:00) [22]

> [4] Ega23 ©   (07.09.06 14:26)

Э... Все таки там в инсерте from лишний :)


Ega23   (2006-09-07 14:28:00) [23]

Впрочем, это уже от логики зависит.


Ega23   (2006-09-07 14:28:00) [24]

insert into History_Table from (select field1, getdate(), user from inserted)
Только я бы сначала объявил переменную типа datetime, записал в неё значение getdate() и потом подставлял значение переменной. А то если записей сотня - значение разное будет.


Ega23   (2006-09-07 14:26:00) [25]


> insert into History_Table from (select field1, getdate(),
>  user from inserted)


"Абсолютно в ж..у правильно!" (с) Pulp Fiction


evvcom   (2006-09-07 14:10:00) [26]

Записей может быть и больше одной.

> только после этого производить добавление

Это в смысле история изменений? То как ты написал, тебе, видимо, подойдет
insert into History_Table from (select field1, getdate(), user from inserted)


NotGooDP   (2006-09-07 13:51:00) [27]

Насколько я понял из BOL необходимо сначала создать переменую
DECLARE @переменная тип
затем переменной присвоить значение
SELECT @переменная = Table_ELD.поле1
From Table_ELD

только после этого производить добавление
INSERT History_Table
VALUES(@переменная ,GETDATE ( ), USER)


правильно ????


Ega23   (2006-09-07 13:41:00) [28]

Читай в BOL про inserted и deleted в разделе Create Trigger


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо