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);

       五、其他

TCL语言的SQL

 TCL语言的SQL

 TCL语言的SQL

 

       

上一篇:tcl基础知识


下一篇:计算机视觉-从0开始用python神经网络-pycharm报错和解决整理