首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

insert并没成事功,但FOR INSERT的触发器却执行了

2012-12-18 
insert并没有成功,但FOR INSERT的触发器却执行了本帖最后由 zyaim 于 2012-11-06 11:20:03 编辑如题。按我

insert并没有成功,但FOR INSERT的触发器却执行了
本帖最后由 zyaim 于 2012-11-06 11:20:03 编辑 如题。
按我的理解,for insert的触发器一定要是在插入成功之后才执行的,可是,实际情况是并没有插入成功,只是去尝试插入,但触发器还是执行了。请教一下,这可能是什么原因呢?
[最优解释]
我遇到过一起情况,虽然这种情况发生机会其实很小,但是还是检查一下吧。就是表中有不止一个触发器,其中一个是删除的,这是真实情况,我插入一条数据,提示成功了,但是表里面没数据,找了很久才发现原来有人搞了个触发器,插一条删一条。
[其他解释]

引用:
插入时没有错误提示,我现在猜想,可能是插入之后又把插入的记录删除了,所以,去表里看结果的话,就好像没有插入过一样。
你的猜想和1楼其实差不多,你好好检查下你这个表还有没有其他触发器
[其他解释]
有insert语句就会触发,但是执行之后会回滚。
[其他解释]
如果是因为插入出错而未插入成功,for insert的触发器是不可能被执行的
[其他解释]
谢谢,你误会我意思了。我纠结的不是插入失败,我纠结的是插入失败了,但为什么FOR INSERT的触发器却依旧执行

[其他解释]
create TRIGGER tr_xxxxx
   ON table1
   FOR INSERT
AS 
BEGIN
.......
[其他解释]
怪了。有尝试插入,但是并未插入成功,可是for insert的触发器还是执行了,也并没有回滚。
(我都成祥林嫂了)
[其他解释]
插入时没有错误提示,我现在猜想,可能是插入之后又把插入的记录删除了,所以,去表里看结果的话,就好像没有插入过一样。
[其他解释]
引用:
插入时没有错误提示,我现在猜想,可能是插入之后又把插入的记录删除了,所以,去表里看结果的话,就好像没有插入过一样。
兜个圈回来怎么还是我的猜想啊?
[其他解释]
引用:
引用:插入时没有错误提示,我现在猜想,可能是插入之后又把插入的记录删除了,所以,去表里看结果的话,就好像没有插入过一样。兜个圈回来怎么还是我的猜想啊?

哈哈,一楼威武
[其他解释]
我比较在乎你问题找到没?
[其他解释]
引用:
我比较在乎你问题找到没?

谢谢在乎,后来没去鸟那个问题了,越鸟越头疼,我饶道行驶了。

热点排行