zoukankan      html  css  js  c++  java
  • SQLSERVER学习八:事务和锁

    1、对事务的理解:要么都成功,要么都失败;一荣俱荣,一损俱损;

    2、事务的四种模式:

    • 显式事务:每个事务均以BEGIN TRAN语句显示开始,以COMMIT或ROLLBACK语句显示结束
    • 隐式事务:在前一个事务完成时新事务隐式启动,但每个事务仍以COMMIT或ROLLBACK语句显示结束
    • 自动提交事务:每条单独的语句都是一个事务
    • 批处理级事务:只能应用于多个活动结果集,······

    3、事务的特点或属性:原子性、一致性、隔离性、持久性

    4、常用例子(事务要尽可能的简短)

    BEGIN TRAN --开启一个没有名称的事务
    INSERT INTO [dbo].[Table_1]  VALUES (N'9', N'10');
    ROLLBACK TRAN; --回滚
    --COMMIT TRAN;--提交 
    
    BEGIN TRAN tran_add; --开启一个名为 tran_add 的事务
    INSERT INTO [dbo].[Table_1]  VALUES (N'5', N'6');
    SAVE TRAN one;--设置一个保存点one
    INSERT INTO [dbo].[Table_1]  VALUES (N'7', N'8');
    ROLLBACK TRAN one;--回滚至保存点one
    COMMIT TRAN tran_add;--提交

    5、锁(解决多个用户同时对数据库的并发操作时会带来以下数据不一致的问题:丢失更新、脏读、不可重复读 )

  • 相关阅读:
    day23 GUI
    day17JDK5.0新特性与正则表达式
    day12-day15集合
    day11线程
    day10-JavaAPI
    day09面向对象-
    day08面向对象-内部类、异常
    day06面向对象
    Idea导入Eclipse中的Maven Web(SSM)
    java给图片添加水印
  • 原文地址:https://www.cnblogs.com/juanheqiao/p/14348376.html
Copyright © 2011-2022 走看看