1、概述

作用:用于在过程,函数,和包中执行SQL事务处理语句.

2、包的组成

1)、read_only
说明:用于开始只读事务,其作用与SQL语句SET TRANSACTION READ ONLY完全相同,该过程必须是事务开始的第一条语句。
语法:dbms_transactino.read_only

2)、read_write
说明:用于开始读写事务,其作用与SQL语句SET TRANSACTION READ WRITE完全相同,该过程必须是事务开始的第一条语句。
语法:dbms_transactino.read_write

3)、advise_rollback
说明:用于建议回退远程数据库的分布式事务,其作用与SQL语句alter seesion advise rollback完全相同
语法:dbms_transactino.advise_rollback

4)、advise_nothing
说明:用于建议远程数据库的分布式事务不进行任何处理,其作用与SQL语句alter seesion advise nothing完全相同
语法:dbms_transactino.advise_nothing

5)、advise_commit
说明:用于建议提交远程数据库的分布式事务,其作用与SQL语句alter seesion advise commit完全相同
语法:dbms_transactino.advise_commit;

6)、use_rollback_segment
说明:用于指定事务所要使用的回滚段,其作用与SQL语句set transaction use rollback segment完全相同
语法:dbms_transactino.use_rollback_segment(rb_name varchar2);
其中,rb_name指定事务所要使用的回滚段名称。

7)、commit_comment
说明:用于在提交事务时指定注释,其作用与SQL语句commit comment<text>完全相同
语法:dbms_transactino.commit_comment(cmnt varchar2);
其中cmnt用于指定与事务相关的注释信息。

8)、commit_force
说明:用于强制提交分布式事务,其作用与SQL语句commit force text,number完全相同
语法:dbms_transaction.commit_force(xid varchar2,scn carchar2 default null);

9)、commit
说明:用于提交当前事务,其作用与sql语句commit完全相同。
语法:dbms_transaction.commit;

10)、savepoint
说明:用于设置保存点,其作用与sql语句savepoint 完全相同。
语法:dbms_transaction.sevepoint(savept varchar2);
其中,savept指定保存点名称。

11)、rollback
说明:用于回退当前事务,其作用与sql语句rollback完全相同。
语法:dbms_transaction.rollback;

12)、rollback_savepoint
说明:用于回退到保存点,并取消部分事务,其作用与sql语句rollback to savepoint<savepoint_name>完全相同。
语法:dbms_transaction.rollback_savepoint(savept varchar2);

13)、rollback_force
说明:用于强制回退分布式事务,其作用与sql语句rollback force<text>完全相同。
语法:dbms_transaction.rollback_force(xid varchar2);

14)、begin_discrete_transaction
说明:用于开始独立事务模式
语法:dbms_transaction.begin_discreate_transaction;

15)、purge_mixed
说明:用于清除分布式事务的混合事务结果
语法:dbms_transaction.purge_mixed(xid varchar2);
其中xid指定事务ID号。

16)、purge_lost_db_entry
说明:用于清除本地数据库所记载的远程事务入口,该事务入口操作因为远程数据库问题未能在远程数据库完成.
语法:dbms_transaction.purge_lost_db_entry(xid varchar2);
其中xid指定事务ID号。

17)、local_transaction_id
说明:用于返回当前事务的事务标识号
语法:dbms_transaction.local_transaction_id(create_transaction boolean:=false) return varchar2;
其中create_transaction指定是否要启动新事务,true为启动。

(18)、step_id
说明:用于返回排序DML事务的惟一正整数
语法:dbms_transaction.step_id return number;

五.dbms_transaction(用于在过程,函数,和包中执行SQL事务处理语句.)的更多相关文章

  1. Oracle 在函数或存储过程中执行sql查询字符串并将结果值赋值给变量

    请看黄色部分 --区县指标 THEN TVALUE_SQL := 'SELECT TO_CHAR(' || CUR_ROW.MAIN_FIELD || ') FROM ' || CUR_ROW.END ...

  2. ORA-04044: 此处不允许过程, 函数, 程序包或类型和

    用Orale代码建表时,出现 SQL> comment on column SCORE.cno 2 is '学号(外键)';comment on column SCORE.cno is '学号( ...

  3. Oracle中如何导出存储过程、函数、包和触发器的定义语句?如何导出表的结构?如何导出索引的创建语句?

    Oracle中如何导出存储过程.函数.包和触发器的定义语句?如何导出表的结构?如何导出索引的创建语句? QQ群里有人问:如何导出一个用户下的存储过程?   麦苗答:方法有多种,可以使用DBMS_MET ...

  4. oracle 过程函数,包的区别和联系

    一.过程与函数区别 1.过程可以有0~N个返回参数,通过OUT or IN OUT参数返回:函数有且仅有1个返回值,通过return语句返回. 2.调用过程时,可做为单独的语句执行:调用函数时,函数必 ...

  5. Oracle 在函数或存储过程中执行一条插入语句并返回主键ID值

    有时,我们需要往一张表插入一条记录,同时返回主键ID值. 假定主键ID的值都是通过对应表的SEQUENCE来获得,然后进行ID赋值 这里有几种情况需要注意: 1)如果建表语句含有主键ID的触发器,通过 ...

  6. 将PL/SQL代码封装在机灵的包中

    将代码封装在机灵的包中 http://www.oracle.com/technetwork/issue-archive/2013/13-jan/o13plsql-1872456.html 绝大多数基于 ...

  7. oracle中的创建过程,函数,包

    一.创建存储过程 存储过程是在oracle中存取完成特定业务逻辑的代码块.存储过程是命名块,匿名块不存在数据库中,命名块会存储到数据库中,匿名块每次运行都需要提前编译,命名块一次存储,只会编译一次.命 ...

  8. PL/SQL --> 动态SQL调用包中函数或过程

    动态SQL主要是用于针对不同的条件或查询任务来生成不同的SQL语句.最常用的方法是直接使用EXECUTE IMMEDIATE来执行动态SQL语句字符串或字符串变量.但是对于系统自定义的包或用户自定的包 ...

  9. oracle 包,函数,过程,块的创建和执行及在java中执行(转)

    SQL> create or replace procedure sp_guocheng1 is--如果有这个名字就替换  2  begin--执行部分  3  insert into guoc ...

随机推荐

  1. 2017 Multi-University Training Contest - Team 3 Kanade's sum hd6058

    地址:http://acm.split.hdu.edu.cn/showproblem.php?pid=6058 题目: Kanade's sum Time Limit: 4000/2000 MS (J ...

  2. 【android】来电悬浮窗

    先看下效果图 说下思路: 1:监听来电广播 2:根据来电号码,和本地数据库做匹配,有记录的,则提取出头像.名字.职位,生成悬浮窗 3:监听来电广播,如果当前行为是空闲的(没有任何通话行为),则删除掉悬 ...

  3. iOS 关于BTC 一些知识点

    1.BTC 用这个网 可以校验 自己的库生成的助记词 地址 是否是合法正常的 https://iancoleman.io/bip39/ 2.知晓 BTC 钱包是否有钱 和交易记录 https://te ...

  4. spark学习(基础篇)--(第三节)Spark几种运行模式

    spark应用执行机制分析 前段时间一直在编写指标代码,一直采用的是--deploy-mode client方式开发测试,因此执行没遇到什么问题,但是放到生产上采用--master yarn-clus ...

  5. 有界、无界队列对ThreadPoolExcutor执行的影响

    本文转载自https://blog.csdn.net/kusedexingfu/article/details/72491864 Java提供了4钟线程池: newCachedThreadPool n ...

  6. 设置HTML5的video播放速度

    var speed = 1.5;//设置速度 var vdo = document.getElementById("视频的id");//获取id vdo.playbackRate ...

  7. 20145310《Java程序设计》第5次实验报告

    20145310<Java程序设计>第5次实验报告 实验要求 掌握Socket程序的编写: 掌握密码技术的使用: 设计安全传输系统. 实验内容 根据所学内容,编写代码实现服务器与客户端 掌 ...

  8. 百度console输出

    try{ if(window.console&&window.console.log) { console.log("一张网页,要经历怎样的过程,才能抵达用户面前?\n一位新 ...

  9. 彻底搞懂hashCode与equals的作用与区别及应当注意的细节

    以前写程序一直没有注意hashCode的作用,一般都是覆盖了equals,缺没有覆盖hashCode,现在发现这是埋下了很多潜在的Bug!今天就来说一说hashCode和equals的作用. 先来试想 ...

  10. Swift进阶之路(一)——单例模式、属性传值、代理传值、闭包传值

    一.单例模式 单例模式是设计模式中最简单的一种,甚至有些模式大师都不称其为模式,称其为一种实现技巧,因为设计模式讲究对象之间的关系的抽象,而单例模式只有自己一个对象. 关于单例,有三个重要的准则需要牢 ...