2011-03-30 71 views
0

我现在正在编写触发器,我很好奇,如果可以在可能影响多列的更新的单个列上回滚事务?仅在一列上回滚事务 - SQL Server 2008

+0

是否要撤消对一列的修改,并保留其他修改?这是可能的,只是它不被称为回滚。 – 2011-03-30 18:41:58

回答

2

不,事务在开始传输和回滚之间回滚一切。另外,这需要一个特殊的回滚语句语法,您可以(假定)选择回滚哪个列。

+0

听起来不错。我不认为那是,只是想与社区核对。谢谢。 – 2011-03-30 18:22:08

0

是否要撤消对一列的修改并保留其他修改?有可能,您可以从触发器中删除已删除虚拟表中的旧值。它不被称为回滚,但你可以做到这一点。

+0

我认为这可能有用。你能详细解释一下吗?我试过在触发器中查询INSERTED表(view?),但问题是我可能不知道哪些字段正在更新,因此不知道如何采取相应措施。 – 2011-03-30 19:59:28