SQL_事务处理

事务机制:将一组数据库操作命令当做一个完整且独立的操作序列,即这一组命令要么全部执行要么全执行失败.

事物:是一种机制,每个事物是独立的工作单元.

在数据库系统上执行并发操作时事物是作为最小的控制单元来使用.

事物:

    原子性:成功与否都是一起的,

   一致性:数据都保持一致状态

   隔离性:对数据进行修改的所有并发事物是彼此隔离的

   持久性:只要事物成功提交后,就不能再次回滚到提交前的状态

开始事物:begin transaction

提交事物:commit transaction

回滚事物:rollback transaction

显示事物:用begintransaction 明确事物的开始,后面是T_SQL语句都是一个整体

隐式事物:使用set implicit transaction on语句,将隐式事物设置为打开.当隐式事物操作时,sql server 将提交或回滚事物后自动启动新食物.无需手动开始事物,只需要提交或回滚事物.

自动提交事物:将每条T-sql语句事物一个事物  

创建事物原则:

  1:事物要尽可能简短

  2:访问的数据量要少

  3:浏览数据是尽量不要打开事物,避免占用资源

  4:处理期间尽量不要用户输入

注意事项:

     在每个操作之后都要检查@@error @@rowcount 的值 以确定操作是否成功

当一个事物结束后,紧跟在事物之后的SQL语句还可以执行,但是出错后不能回滚事物

已提交的事物会将正式写入数据库中

无法回滚的语句 create database alter database  drop database 不能写在事物中使用

在事物发生错误时使得事物无法执行,事物也会回滚

 

事物隔离级别:

read uncommitted  不隔离数据

read committed 不允许读取没有提交的数据

repeatable read  在事物中锁定所读取的数据不让人修改和删除

snapshot 快照隔离

serialization 全部锁定,并发性最低

 

 

 

 

 

 

 

  

 

 

 

 

 

posted @ 2013-05-12 00:07  狐狸不会飞  阅读(211)  评论(0编辑  收藏  举报