>  기사  >  데이터 베이스  >  sqlserver事务

sqlserver事务

WBOY
WBOY원래의
2016-06-07 15:51:481547검색

事务是一种机制,是一个操作序列。它包含了一组数据库操作命令,所有的命令将作为一个整体,一起向系统提交或撤销,请求要么都执行,要么都不执行。 因此,事务是一个不可分割的工作逻辑单元,类似于操作系统的源于概念。在数据库系统上执行并发操作是,事务

事务是一种机制,是一个操作序列。它包含了一组数据库操作命令,所有的命令将作为一个整体,一起向系统提交或撤销,请求要么都执行,要么都不执行。

因此,事务是一个不可分割的工作逻辑单元,类似于操作系统的源于概念。在数据库系统上执行并发操作是,事务是作为最小的控制单元来使用的。

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

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.