事务 (Transact-SQL)

事务 (Transact-SQL)

事务是单个工作单元。 如果某一事务成功,则在该事务中进行的所有数据修改均会提交,成为数据库中的永久组成部分。 如果事务遇到错误且必须取消或回滚,则所有数据修改均被清除。

SQL Server 以下列事务模式运行:

自动提交事务
每条单独的语句都是一个事务。

显式事务
每个事务均以 BEGIN TRANSACTION 语句显式开始,以 COMMIT 或 ROLLBACK 语句显式结束。

隐式事务
在前一个事务完成时新事务隐式启动,但每个事务仍以 COMMIT 或 ROLLBACK 语句显式完成。

批处理级事务
只能应用于多个活动结果集 (MARS),在 MARS 会话中启动的 Transact-SQL 显式或隐式事务变为批处理级事务。 当批处理完成时没有提交或回滚的批处理级事务自动由 SQL Server 进行回滚。

1.显示事务

显示事务需要显示地定义事务的启动和结束。

它是通过 BEGIN TRANSACTION 、 COMMIT TRANSACTION 、ROLLBACKTRANSACTION 、 SAVE TRANSACTION 等Transact-SQL语句来完成的。

启动事务: BEGIN TRANSACTION 。

结束事务: COMMIT TRANSACTION 

代码示例:

在事务内设置保存点: SAVE TRANSACTION 。保存点是如果有条件的取消事务的一部分,事务可以返回的位置。例如:

不能用于事务的操作:

操作

相应的SQL语句

创建数据库

CREATE DATABASE

修改数据库

ALTER DATABASE

删除数据库

DROP DATABASE

恢复数据库

RESTORE DATABASE

加载数据库

LOAD DATABASE

备份日志文件

BACKUP LOG

恢复日志文件

RESTORE LOG

更新统计数据

UPDATE STATISTICS

授权操作

GRANT

复制事务日志

DUMP TRANSACTION

磁盘初始化

DISK INIT

发布了49 篇原创文章 · 获赞 0 · 访问量 1186

猜你喜欢

转载自blog.csdn.net/zby_yu/article/details/103869220