Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 использование inserted в тригере  [new]
Юрий П
Member

Откуда:
Сообщений: 2
с виду простой вопрос но у меня почему-то не работает...
CREATE TRIGGER prob ON [dbo].[Thistory]
FOR INSERT

AS
insert into Tdebug (id_prod, debug_date, prih,rash, ostat, prim)
values (inserted.id_prod, inserted.his_date, inserted.prih, inserted.rash, inserted.ostat, inserted.prim)
GO

при попытке сохранить выдает вот такую ошибку:

Error128: the name ‘id_prod’ is not permitted in this context. Only constants, exspressions, or variables allowed here. column names are not permitted.

разумеется, поля в табл. Thistory и Tdebug написаны правильно.
если подставить конкретные значения в values тригер и сохраняется и срабатывает. ему не нравится, как мне кажется, ссылка на виртуальную табл. inserted но я в разных источниках вижу как это все делают.
вопрос очевиден, где я ошибаюсь?
спасибо.
26 мар 05, 18:44    [1417642]     Ответить | Цитировать Сообщить модератору
 Re: использование inserted в тригере  [new]
Гавриленко Сергей Алексеевич
Member

Откуда: Moscow
Сообщений: 37101
Во первых, inserted это таблица и там может быть больше, чем одна запись.
Во-вторых, неправилен синтаксис.
З.Ы.
insert into Tdebug (id_prod, debug_date, prih,rash, ostat, prim) 
select id_prod, his_date, prih, rash, ostat, prim
from inserted
26 мар 05, 18:49    [1417647]     Ответить | Цитировать Сообщить модератору
 Re: использование inserted в тригере  [new]
Юрий П
Member

Откуда:
Сообщений: 2
большое спасибо. все получилось.
26 мар 05, 19:16    [1417678]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить