zoukankan      html  css  js  c++  java
  • Oracle 18C新特性:ALTER SYSTEM CANCEL SQL

    介绍

      18c官方文档《Database Administrator’s Guide》中有介绍,关于取消会话的sql事务有新增特性,可以使用ALTER SYSTEM CANCEL SQL。。对事务取消,具体使用方法如下: 

      

    实践证明

    ##session 1
    SQL> select sid, serial# from v$session where sid = userenv('SID');
           SID    SERIAL#
    ---------- ----------
            25      29476
    SQL> create table t_source as select * from dba_source where 1=2;
    Table created.
    SQL> select count(*) from t_source;
      COUNT(*)
    ----------
             0
    SQL>  insert into t_source select * from dba_source;
    292640 rows created.                  <========================== 备注此时的总记录数
    SQL>  insert into t_source select * from dba_source;

    正在执行第2次insert时,在另外一个session执行取消操作。

    ##session 2
    SQL> alter system cancel sql '25,29476';
    System altered.

    检查session 1 此时的执行信息。

    ##session 1
    SQL>  insert into t_source select * from dba_source;
     insert into t_source select * from dba_source
    *
    ERROR at line 1:
    ORA-01013: user requested cancel of current operation
    
    SQL> select count(*) from t_source;
    
      COUNT(*)
    ----------
        292640                         <========================== 记录数和第2次插入之前一样

    这里可以看到第2次插入的记录已经回滚。

  • 相关阅读:
    TLS回调函数
    MySQL-based databases CVE-2016-6664 本地提权
    go语文中panic的使用
    Redis实现分布式锁与任务队列的思路
    mysql添加权限权限用户
    php压缩html代码减少页面响应时间
    Docker搭建nginx+php-fpm运行环境
    vscode使用phpxdebug调试
    PHP7引用类型
    PHPFPM模式三种运行模式
  • 原文地址:https://www.cnblogs.com/bicewow/p/12418676.html
Copyright © 2011-2022 走看看