sqlserver事务
事务是一种机制,是一个操作序列。它包含了一组数据库操作命令,所有的命令将作为一个整体,一起向系统提交或撤销,请求要么都执行,要么都不执行。 因此,事务是一个不可分割的工作逻辑单元,类似于操作系统的源于概念。在数据库系统上执行并发操作是,事务
事务是一种机制,是一个操作序列。它包含了一组数据库操作命令,所有的命令将作为一个整体,一起向系统提交或撤销,请求要么都执行,要么都不执行。
因此,事务是一个不可分割的工作逻辑单元,类似于操作系统的源于概念。在数据库系统上执行并发操作是,事务是作为最小的控制单元来使用的。
sql语言中,定义事务操作的语句,
begin transaction
commit transaction
rollback transaction
事务的特性:
原子性,一致性,隔离性,持久性。
下面举例说明事务回滚的应用:
begin transaction my_transaction_delete
use company--使用数据库
go
delete from department where dept_id='1023'--执行删除
save transaction after_delete --设置事务的恢复点
update employee set dept_id='1001' where dept_id='1012'
--后勤部的职工编号变成经理室编号
if @@error0 ro @@rowcount=0 then
--检测是否成功更新,@@error返回一个sql语句状态,非零即说明出错,错则回滚。
begin
rollback tran after_delete--回滚到保存点
commit tran--如果没有发生错误则表示数据可以提交
print '更新员工信息是产生错误'
return
end
commit transaction my_transaction_delete
go
推荐阅读
-
php5.3以后的版本连接sqlserver2000的方法
-
Python3与SQLServer、Oracle、MySql的连接方法
-
sqlserver2005性能监视器计数器要求错误和com+目录要求错误解决
-
SQLServer语句优化
-
sqlserver2014不允许保存更改,阻止保存要求重新创建表的更改问题解决办法
-
SQLSERVER查询锁表,阻塞,使用表名查询存储过程,行数,表字段类型等常规查询实例讲解
-
SQLServer2012的身份验证方式和权限设置实验分享
-
通过Java实现批量导入数据到SQLServer数据库
-
rabbitmq~消息失败后重试达到 TTL放到死信队列(事务型消息补偿机制)
-
使用表类型(Table Type-SqlServer)实现百万级别的数据一次性毫秒级别插入