什么是sqlserver中的事务

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是sqlserver中的事务相关的知识,希望对你有一定的参考价值。

参考技术A 用个例子来说明
如果我们要修改表中的某条记录,可以用以下方法:
首先删除原记录,然后插入修改后的新记录
这个过程中有2步
如果出现记录删除成功,但插入的时候因为某种原因导致失败的话,就会出现数据丢失。
这个时候,就可以用事物来处理
把删除和插入当成是一件事,必须是2步都成功,数据才发生改变。
否则若是出现删除成功,而插入失败的情况,希望将自动回滚,恢复为原始状态。

什么是SQLSERVER事务处理和事务回滚?

事务(Transaction)是访问并可能更新数据库中各种数据项的一个程序执行单元(unit)。事务通常由高级数据库操纵语言或编程语言(如SQL,C++或Java)书写的用户程序的执行所引起,并用形如begin transaction和end transaction语句(或函数调用)来界定。事务由事务开始(begin transaction)和事务结束(end transaction)之间执行的全体操作组成。

当一个事务的某一个操作发生问题时,整个事务可以回滚掉,就像没有做任何操作一样。这就是事务回滚。
如果一个事务的所有操作均成功,则就可以提交事务,保证事务的完整性。

应用程序主要通过指定事务启动和结束的时间来控制事务。

以MS SQL Server的Transac-SQL语言为例,
事务启动:
BEGIN TRAN [ SACTION ] [ transaction_name | @tran_name_variable [ WITH MARK [ \'description\' ] ] ]

结束事务
可以使用 COMMIT 或 ROLLBACK 语句结束事务。

1 事务的提交
BEGIN TRANSACTION T1
INSERT tabel1 ...
UPDATE table2 ...
...
/* 当所有成功操作完成,提交事务 */
COMMIT TRAN T1

2 事务的回滚
BEGIN TRANSACTION T1
INSERT tabel1 ...
...
/* 当发生错误或事务被取消, 回滚事务 */
ROLLBACK TRAN T1
参考技术A 事务处理是指由一些列的的数据库操作完成一个事务的过程。当一个事务的某一个操作发生问题时,整个事务可以回滚掉,就像没有做任何操作一样。这就是事务回滚。如果一个事务的所有操作均成功,则就可以提交事务,保证事务的完整性。应用程序主要通过指定事务启动和结束的时间来控制事务。以MS SQL Server的Transac-SQL语言为例,事务启动:BEGIN TRAN [ SACTION ] [ transaction_name | @tran_name_variable [ WITH MARK [ 'description' ] ] ]结束事务可以使用 COMMIT 或 ROLLBACK 语句结束事务。1 事务的提交BEGIN TRANSACTION T1/* 当所有成功操作完成,提交事务 */COMMIT TRAN T12 事务的回滚BEGIN TRANSACTION T1/* 当发生错误或事务被取消, 回滚事务 */本回答被提问者采纳

以上是关于什么是sqlserver中的事务的主要内容,如果未能解决你的问题,请参考以下文章

SqlServer解析SqlServer中的事务

事务隔离级别,为什么SQLSERVER 容易锁表

sql server中的事务是啥意思

sqlserver中事务的作用是啥?

什么是SQLSERVER事务处理和事务回滚?

SQLServer事务的原理