可以这样理解:触发器本身就是一个事务。 try: create table a(aa varchar(10)) go create table b(aa int) go --虽然在触发器里面没有加事务,a表照样没插入数据。 create trigger trig_insert_a on a for insert as insert b select * from inserted go insert a select 'asdf' select * from a select * from b
这个要看触发器的类型 如果是AFTER,应该A表更新完毕。 如果是FOR,应该也更新完毕了。 如果是INSTEAD OF 肯定A表没有更新
try:
create table a(aa varchar(10))
go
create table b(aa int)
go
--虽然在触发器里面没有加事务,a表照样没插入数据。
create trigger trig_insert_a on a
for insert as
insert b select * from inserted
go
insert a select 'asdf'
select * from a
select * from b
如果是AFTER,应该A表更新完毕。
如果是FOR,应该也更新完毕了。
如果是INSTEAD OF 肯定A表没有更新