日期:2014-05-17  浏览次数:20571 次

对带有触发器的表进行修改操作,是否成败都是同步?
SQLSERVER 2005 建一个表A,  表里边建一个UPDATE 触发器,     
UPDATE 触发器里,  会操作两条 UPDATE ,两条INSERT 对其它表的修改与插入操作。


现在请问  我对表A 在C#.net程序里进行SQL 语句 UPDATE 操作,假设 而本次操作如果成功,将会触发
UPDATE 触发器里全部四条修改插入操作。 

问题来了,   C# 里的程序要是否UPDATE 一点问题也没有, 执行成功,  而触发器里边的四条修改插入语句有一条执行出错(无论是连接还是触发器里数据类型什么的意外出错导致)不成功的话。

1,五条修改操作是否会全部都不会去执行?就象一个事务一样,要不全部成功,要不就全部失败?
2,C#的UPDATE 语句对表操作成功,而触发器里的一条句话失败不执行,另三条都会执行成功?
3,C#的UPDATE 语句对表操作成功,触发器里的四条操作都不执行,都算失败?


请告诉我答案。  我不太明白, 

------解决方案--------------------
其中只要有一个操作有错误,那么所有操作就不会保存.
只有全部都成功以后才会一次性commit.
------解决方案--------------------
5条操作属于一个事务。