TCL语言的SQL

一、事物的特性(ACID):

       原子性:一个事务不可以在分割,要么都执行,要么都不执行。

       一致性:一个事务执行会使数据从一个一致性状态切换到另一个一致性状态。

       隔离性:一个事务的执行不受其他事务的干扰。

       持久性:一个事务一旦提交,则会永久的改变数据库的数据。

二、事务的创建

       1.隐式事务:事务没有明显得开启和结束的标记

                        比如delect、insert、update语句

        2.显式事务:事务具有明显的开启和结束的标记

                前提:必须先设置自动提交功能为禁用

                            set   autocommit=0;

         3.步骤1:开启事务

                       set    autocommit=0;

                       start   transaction;可选的

             步骤2:编写事务中的SQL语句(insert、update、select、delect)

                       语句1;

                       语句2;

                        .........

         4.步骤3:结束事务

                       commit;

                        rollback;回滚事务   

                        savepoint;保存点

         5.savepoint练习

             set    autocommit=0;

             start   transaction;

             delect  from  account   where  id =1;

             savepoint  a;#设置保存点

             delect  from  account   where  id =2;

             rollback  to  a;#回滚到当时的保存点 

      -------最后结果:1已经删除,2没有删除回滚了。

三、常见的隔离

                                        脏读             不可重复读            幻读                       

read  uncommitted:        √                       √                        √

read   committed:           ×                       √                        √

repeatable  read:            ×                       ×                        √

serializable:                    ×                       ×                        ×

其中       MySQL中默认第三个隔离级别——————repeatable   read

              Oracle中默认第二个隔离级别 ——————read  committed

 四、查看隔离级别

      1.首先打开mysql

      2.查看隔离级别:select   @@tx_isolation;

      3.如果字符集中的name出现乱码,可将字符集进行修改 set  name  gbk;

      4.设置当前SQL隔离级别:set  session  transaction  isolation  level  隔离级别

      5.设置数据库系统的全局的隔离级别:

                        set  global  transaction  isolation  level  隔离级别(read committed);

       五、其他

 

 

 

       

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值