1

在事务中,我创建了一些临时表并插入了一些数据。如果一切顺利,临时表将被删除,然后事务将被提交。如果有异常,连接将关闭。

我的问题是:我必须在关闭连接之前回滚事务吗?或者,只要连接关闭就可以了?

如果我回滚,我假设在事务中创建的临时表也将被删除(回滚),对吗?

谢谢

4

2 回答 2

4

临时表超出范围时将被删除。

但是,在打开事务时失去连接会创建一个孤立的事务,并且它持有的任何锁都将保留。

一旦遇到运行时错误,使用 SET XACT_ABORT 应该回滚任何事务。

http://msdn.microsoft.com/en-us/library/ms188792.aspx

于 2013-02-06T21:52:52.920 回答
2

临时表一旦超出范围就会立即删除。无论它是否回滚,关闭连接都会使其超出范围。

于 2013-02-06T21:50:03.417 回答