Sql Server中的事务介绍
1.什么是事务:事务是一个不可分割的工作逻辑单元,在数据库系统上执行并发操作时事务是做为最小的控制单元来使用的。
他包含的所有数据库操作命令作为一个整体一起向系提交或撤消,这一组数据库操作命令要么都执行,要么都不执行。
事务是一个不可分割的工作逻辑单元
2.事务的分类.
按事务的启动与执行方式,可以将事务分为3类:
①显示事务 :也称之为用户定义或用户指定的事务,即可以显式地定义启动和结束的事务。分布式事务属于显示事务
②自动提交事务:默认事务管理模式。如果一个语句成功地完成,则提交该语句;如果遇到错误,则回滚该语句。
③隐性事务:当连接以此模式进行操作时,sql将在提交或回滚当前事务后自动启动新事务。无须描述事务的开始,只需提交或回滚每个事务。它生成连续的事务链。
3.事务的语句
开始事物:BEGIN TRANSACTION(简写tran)
提交事物:COMMIT TRANSACTION
回滚事务:ROLLBACK TRANSACTION
注:一旦事务提交或回滚,则事务结束
4.事务的4个特性
①原子性(Atomicity):事务中的所有元素作为一个整体提交或回滚,是不可折分的,事务是一个完整的操作。
②一致性(Consistemcy):事物完成时,数据必须是一致的,也就是说,和事物开始之前,数据存储中的数据处于一致状态。保证数据的无损。
③隔离性(Isolation):对数据进行修改的多个事务是彼此隔离的。这表明事务必须是独立的,不应该以任何方式来影响其他事务。
④持久性(Durability):事务完成之后,它对于系统的影响是永久的,该修改即使出现系统故障也将一直保留,真实的修改了数据库。
5.实例
@@error:全局变量,记录错误号,对错误进行累计
begin tran 开始事务declare @errorsum int 定义变量记录错误的数量
set @errorsum=0 错误数量默认为0
update dbo.OfficeRent set CreateTime=GETDATE() where Id=2 持续Sql语句
set @errorsum+=@@ERROR 累计是否有错
update dbo.OfficeRent set Hits+=1 where Id=2 持续Sql语句
set @errorsum+=@@ERROR 累计是否有错
if @errorsum 0 判断是否出现错误的情况
begin
print 有错误,回滚
rollback tran 出现错误,回滚
end
else
begin
print 成功,提交
commit tran 提交事务
6.以下操作不能用事务
创建数据库 create database
修改数据库 alter database
删除数据库 drop database
恢复数据库 restore database
加载数据库 load database
备份日志文件 backup log
恢复日志文件 restore log
更新统计数据 update statitics
授权操作 grant
复制事务日志 dump tran
磁盘初始化 disk init
更新使用sp_configure后的系统配置 reconfigure
我想要获取技术服务或软件
服务范围:MySQL、ORACLE、SQLSERVER、MongoDB、PostgreSQL 、程序问题
服务方式:远程服务、电话支持、现场服务,沟通指定方式服务
技术标签:数据恢复、安装配置、数据迁移、集群容灾、异常处理、其它问题
本站部分文章参考或来源于网络,如有侵权请联系站长。
数据库远程运维 Sql Server中的事务介绍
相关文章
- sql server 备份还原_什么是SQL
- SQL Server触发器和事务用法示例
- 修改SQL-SERVER数据库表结构的SQL命令附sql命令行修改数据库
- SQL Server数据库中批量导入数据的2种方法
- SQL Server如何通过SQL语句直接操作另一台服务器上的SQL SERVER的数据
- SQL Server数据库(时间戳timestamp)类型详解数据库
- SQL SERVER 分组求和sql语句
- 如何使用SQL Server导出数据(sqlserver导出数据sql)
- 过程SQL Server中优化存储过程的方法(sqlserver存储)
- sql server比较Oracle 与 SQL Server的优缺点(oracleltgt)
- MySQL 跟踪SQL痕迹:如何调试查询问题(mysql跟踪sql)
- 在SQL Server中使用事务(sqlserver中事务)
- Oracle事务SQL:处理复杂数据问题(oracle事务sql)
- 和 sql server支持两者:Oracle 和 SQL Server的兼容性(兼容oracle)
- 处理SQL Server事务处理管理实践(sqlserver事务)
- 管理SQL Server实现成绩管理系统的构建(sqlserver成绩)
- Exploring the Power of MySQL Stored Procedures with SQL(mysql存储过程sql)
- 使用SQL Server轻松实现数字的阶乘运算(sqlserver 阶乘)
- SQL Server长语句优化与性能分析(sqlserver长语句)
- 最新SQL Server简历指南(sqlserver简历)
- SQL Server签名:保证数据安全的关键(sqlServer签名)
- SQL Server:有何独特的优势?(sqlserver有用吗)
- 缩放SQL Server的最大缩放能力(sqlserver最大)
- 基于SQL Server的总代理计划(sqlserver总代理)
- SQL Server存档:安全更新保障数据完整性(sqlserver存档)
- 什么SQL Server的文件后缀是.mdf(sqlserver后缀是)
- 深入了解SQL Server语言,提升数据管理与分析能力(sqlserver语言)
- SQL Server事务处理之锁策略(sqlserver事务锁)
- SQL Server事务:实现数据的一致性(sqlserver事务琐)
- SQL Server中的锁定机制:安全维护事务的关键工具(sqlserver 与锁)
- 25字中文文章标题:Oracle跟踪SQL工具使用详解(oracle跟踪sql工具)
- MySQL 数据库 SQL 优化技巧(mysql下sql优化)
- Sql学习第一天——SQL练习题(建表/sql语句)