我一直不明白嵌套事务有什么好处.提交嵌套事务不会提交任何内容,只会减少@@TRANCOUNT.ROLLBACK可以回滚所有内容.

BEGIN TRANSACTION
   //do an update
   BEGIN TRANSACTION
     //do an insert
   COMMIT TRANSACTION
COMMIT TRANSACTION

这有什么不同:

BEGIN TRANSACTION
     //do an update
     //do an insert
COMMIT TRANSACTION

请给我举个例子,为什么应该使用嵌套事务,以及它们是如何发挥作用的.

推荐答案

嵌套事务允许您的代码调用其他代码(例如SP),这些代码使用事务本身,而不需要在they提交时实际提交your个事务.

也就是说,您可以使用safepoints在事务内部回滚.

CodeProject article块钱是专门用来做这件事的.

Database相关问答推荐

使用Postgres获取带有表架构的外键

如何在没有sqlmock的情况下模拟db ping

什么时候需要手动重新分析 PostgreSQL 中的表?

MYSQL CASE 语句多条件

sql-dump 有什么用?

我们如何使用 Hibernate 和 JPA 调用存储过程?

苹果 ios 购买收据数据的可能最大长度是多少?

try 重新打开一个已经关闭的对象:SQLiteDatabase

一个 5MB 的 SQL 数据库可以存储多少数据?

怎样有效存储 7.300.000.000 行?

在 SQL SERVER 中监视 SQL 查询的进度

此平台不支持 LocalDB

为 Java servlet 管理数据库连接的最佳方法

在 MySQL 中 Select 浮点数

我应该将用户 ID 公开吗?

PostgreSQL 的示例数据库

sqlite 时间戳格式化

为什么 OODBMS 不像 RDBMS 那样普遍?

在 Django 中,如何从数据库中 Select 100 条随机记录?

做或不做:将图像存储在数据库中