读书人

关于触发器inserted表,该如何解决

发布时间: 2013-11-25 13:22:27 作者: rapoo

关于触发器inserted表
分不多了 不好意思

表a有触发器b

但往表插入一天数据 inserted 有一条数据
当同时插入2条数据时 触发器 执行力一次 intserted 有2条数据
/还是 触发器执行了 2次 每次 inserted里只有一条数据

最好给个实例我实验下 谢谢
[解决办法]
同时插入2条数据时,触发器执行一次,intserted有2条数据.


create table #ins(aid int,col varchar(5))

create table 表a
(aid int,col varchar(5))

create trigger 触发器b on 表a
for insert
as
begin
insert into #ins(aid,col)
select aid,col from inserted
end

-- 同时插入2条数据
insert into 表a(aid,col)
select 11,'aa' union all
select 22,'bb'

/*
(2 row(s) affected) --> 针对表a的2条记录

(2 row(s) affected) --> 针对#ins的2条记录
*/

-- 结果
select aid,col from 表a

/*
aid col
----------- -----
11 aa
22 bb

(2 row(s) affected)
*/

select aid,col from #ins

/*
aid col
----------- -----
22 bb
11 aa

(2 row(s) affected)
*/

读书人网 >SQL Server

热点推荐