Savepoint,SQL Server中的回滚问题? [英] Savepoint, rollback problem in sql server ?

查看:122
本文介绍了Savepoint,SQL Server中的回滚问题?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

你好,亲爱的,
我在SQL Server中遇到与提交,保存点,回滚问题有关的问题.

开始交易1
插入tbl
开始交易2
插入tbl1
开始tran 3
插入tbl2
结束

问题描述:

如果未提交事务1或有任何错误,而不是我想为所有事务回滚创建保存点.

hello dear,
i have problem related to commit, savepoint, rollback problem in sql server.

Begin Transaction 1
insert into tbl
begin transaction 2
insert into tbl1
begin tran 3
insert into tbl2
end

Problem description:

if transaction 1 is not commited or have any error than i want to create savepoint for all transaction rollback.

推荐答案

起初,您的问题不是很清楚.但是查看您的查询,我假设您想在发生任何错误时回滚所有内容.

在这种情况下,您无需使用保存点.只需使用回滚事务",因为这将在第一次调用时回滚所有内容.回滚不适用于通过事务进行的事务.如果您将在开始第二笔交易后提交,则所有内容都将被提交.

即使您在下一级别的事务出现任何错误之后也想提交到某个级别,都可以使用Savepoint.
At first your question is not very clear. But looking at your query I assume that you want to rollback everything if any error comes.

If this is the case then you don''t need to use Savepoint. Just use Rollback Transaction, as this would rollback everything, whenever called first. The Rollback do not work on transaction by transction. if you will commit after starting second transaction everything will be commited.

Savepoint is used when you want to commit to a level even after any error comes at next level of transaction.


这篇关于Savepoint,SQL Server中的回滚问题?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆