SQL server 事务介绍,创建与使用
2017-11-09 15:07
281 查看
事务(Transaction)
事务是一种机制,一个操作序列,包含一组操作指令,并且把所有的命令作为一个整体一起向系统提交或撤销操作请求(即要么全部执行,要么全部不执行)
---------------------------------------
事务的4个属性
原子性(Atomiciy)
事务中的所有元素必须作为一个整体提交或回滚,其元素是不可分的(原子性),如果事务中的任何元素出现失败则全部失败.
一致性(Consistency)
数据必须处于一致状态,也就是说事务开始与结束数据要一致,不能损坏其中的数据,也就是说事务不能使数据存储处于不稳定状态.
隔离性(Isolation)
事务必须是独立的不能以任何方式依赖或影响其他事务
持久性(Durability)
事务完成后,事务的效果永久的保存在数据库中
---------------------------------------
事务分类
显式事务
则用begin
transaction指定事务开始commit.../rollback...指定结束
隐式事务
通过设置
set implicit_transaction on(开)或者off(关)
自动提交事务
默认情况下SQL
server每条语句都是一个事务,成功就自动提交,失败就回滚
---------------------------------------
执行事务的语法
开始事务
begin
transaction
提交事务
commit
transaction
回滚(撤销)事务
rollback
transaction
---------------------------------------
示例:
begin
Transaction
update
user set id+=1 where id=1111
if(@@error<>0)
//判断是否报错如果报错就回滚信息否则提交事务
rollback
transaction
else
commit
transaction
事务是一种机制,一个操作序列,包含一组操作指令,并且把所有的命令作为一个整体一起向系统提交或撤销操作请求(即要么全部执行,要么全部不执行)
---------------------------------------
事务的4个属性
原子性(Atomiciy)
事务中的所有元素必须作为一个整体提交或回滚,其元素是不可分的(原子性),如果事务中的任何元素出现失败则全部失败.
一致性(Consistency)
数据必须处于一致状态,也就是说事务开始与结束数据要一致,不能损坏其中的数据,也就是说事务不能使数据存储处于不稳定状态.
隔离性(Isolation)
事务必须是独立的不能以任何方式依赖或影响其他事务
持久性(Durability)
事务完成后,事务的效果永久的保存在数据库中
---------------------------------------
事务分类
显式事务
则用begin
transaction指定事务开始commit.../rollback...指定结束
隐式事务
通过设置
set implicit_transaction on(开)或者off(关)
自动提交事务
默认情况下SQL
server每条语句都是一个事务,成功就自动提交,失败就回滚
---------------------------------------
执行事务的语法
开始事务
begin
transaction
提交事务
commit
transaction
回滚(撤销)事务
rollback
transaction
---------------------------------------
示例:
begin
Transaction
update
user set id+=1 where id=1111
if(@@error<>0)
//判断是否报错如果报错就回滚信息否则提交事务
rollback
transaction
else
commit
transaction
相关文章推荐
- SQL server 事务介绍,创建与使用
- SQL server视图的介绍,创建与使用
- SQL server视图的介绍,创建与使用
- 为什么说JAVA中要慎重使用继承 C# 语言历史版本特性(C# 1.0到C# 8.0汇总) SQL Server事务 事务日志 SQL Server 锁详解 软件架构之 23种设计模式 Oracle与Sqlserver:Order by NULL值介绍 asp.net MVC漏油配置总结
- 使用ADO.NET和C#以编程方式创建 SQL Server 数据库
- [原创]SQL Server 2005:一个使用新创建的User的问题和解决方法
- SQL Server 2005:一个使用新创建的User的问题和解决方法
- [翻译]使用C#创建SQL Server的存储过程(Visual Studio 2005 + SQL Server 2005)
- 在asp.net Sql server (可以是存储过程)中使用事务回滚
- 使用MyGeneration创建模板:介绍(翻译)
- 使用C#创建SQL Server的存储过程
- [翻译]使用C#创建SQL Server的存储过程(Visual Studio 2005 + SQL Server 2005)
- 如何在 SQL Server 2005 中使用 DBCC SHRINKFILE 语句收缩事务日志文件-数据库知识
- 使用C#创建SQL Server的存储过程(Visual Studio 2005 + SQL Server 2005)
- 使用C#创建SQL Server的存储过程
- [翻译]使用C#创建SQL Server的存储过程(Visual Studio 2005 + SQL Server 2005)【转】
- 使用ADO.NET配置SQL Server事务处理
- 使用sql语句创建修改SQL Server标识列
- 进入 ASP.NET 世界 - 第 2 部分:使用 SQL Server 2000 创建数据存储层
- 使用C#创建SQL Server的存储过程