表上的条件触发器

时间:2017-07-30 05:58:15

标签: sql-server tsql triggers conditional

我无法创建一个简单的条件触发器来将数据插入到新表中。以下是触发器及其输出:

[[5, 4, 0], [3, 2, 1], [2, 2, 2], [3, 3, 3]]

OUTPUT如下:

enter image description here

我的要求是我只需要Terminal_ID = 32&的日志。只有33。

谢谢

1 个答案:

答案 0 :(得分:2)

只需在Inserted表的select语句中添加where子句即可。如果您要将Export_Data.DeviceId插入test.Terminal_ID,那么您的过滤器应为where Inserted.DeviceId in (32,33)

CREATE  TRIGGER [dbo].[test_trigger] on [dbo].[Export_Data]
for insert
as
begin
    insert into test(Terminal_ID,EmpIdentification,SwipeDateTime) 
    select DeviceId,UserId,LogDate from Inserted
    WHERE DeviceId in (32, 33)
end