返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >Oracle行级触发器的使用操作
  • 617
分享到

Oracle行级触发器的使用操作

Oracle行级触发器Oracle触发器使用 2023-05-19 17:05:48 617人浏览 安东尼
摘要

oracle行级触发器的使用 1、创建触发器并使用dblink在插入时进行数据同步 异库异表同步 create or replace trigger triggerName --触发

oracle行级触发器的使用

1、创建触发器并使用dblink在插入时进行数据同步

异库异表同步

create or replace trigger triggerName --触发器名称
after insert on tableName  --操作的表
for each row ——行级触发器
declare --这里是关键的地方,在变量申明的地方,指定自定义事务处理。
pragma autonomous_transaction;
begin
insert into "test_user"@Mysqltwo ("USERID","USERNAME") VALUES (:NEW.USERID,:NEW.USERNAME);
--这里需要显示提交事务
commit;
end;

同库异表同步

create or replace trigger triggerName --触发器名称
after insert on tableName  --操作的表
for each row ——行级触发器
begin
insert into test_user (USERID,USERNAME) VALUES (:NEW.USERID,:NEW.USERNAME);
--这里不需要显示提交事务
--commit;
end;

Oracle 行级触发器Trigger中有:new,:old两个特殊变量,当触发器为行级触发器的时候,触发器就会提供new和old两个保存临时行数据的特殊变量,我们可以从俩个特殊的变量中取出数据执行扩张表的DML操作

扩展

after 与 before驱别在两种情况下可体现差别
第一种情况:DML语句执行失败时,如触发器使用before,则不会考虑语句是否执行成功,皆触发;如使用after,因为报错不会继续执行而产生触发;
第二种情况:在进行DML操作前,验证对应操作合法性,那么触发器必须使用before

关于ORA-04091异常的出现原因:

在Oracle中执行DML语句的时候是需要显示进行提交操作的。当我们进行插入的时候,会触发触发器执行对触发器作用表和扩展表的种种操作,但是这个时候触发器和插入语句是在同一个事务管理中的,因此在插入语句没有被提交的情况下,我们无法对触发器作用表进行其他额外的操作。如果执行其他额外的操作则会抛出如上异常信息

我们知道,出错的原因是因为触发器和DML语句在同一事务管理中,所以方案一便是将触发器和DML语句分成两个单独的事务处理。这里可以使用Pragma autonomous_transaction; 告诉Oracle触发器是自定义事务处理。

到此这篇关于Oracle行级触发器的使用的文章就介绍到这了,更多相关Oracle行级触发器内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Oracle行级触发器的使用操作

本文链接: https://www.lsjlt.com/news/213557.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Oracle行级触发器的使用操作
    Oracle行级触发器的使用 1、创建触发器并使用dblink在插入时进行数据同步 异库异表同步 create or replace trigger triggerName --触发...
    99+
    2023-05-19
    Oracle行级触发器 Oracle触发器使用
  • Oracle行级触发器的使用
    oracle行级触发器的使用 1、创建触发器并使用dblink在插入时进行数据同步 异库异表同步 create or replace trigger triggerName --触发器名称 after insert on...
    99+
    2023-05-12
    Oracle行级触发器 Oracle触发器使用
  • oracle中触发器的作用
    oracle 中的触发器自动执行数据库事件中的特定动作,包括:确保数据完整性自动化任务增强安全性实现业务逻辑 Oracle 中触发器的作用 触发器是 Oracle 中的一种数据库对象,...
    99+
    2024-05-09
    oracle
  • oracle触发器的作用是什么
    Oracle触发器是一种特殊的存储过程,它与表相关联,可以在特定的事件发生时自动触发执行。Oracle触发器的作用包括: 数据完...
    99+
    2024-04-09
    oracle
  • Oracle DML触发器和DDL触发器怎么使用
    今天小编给大家分享一下Oracle DML触发器和DDL触发器怎么使用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧...
    99+
    2023-07-05
  • oracle触发器怎么使用
    oracle触发器是用于自动化数据操作的数据库对象,类型包括before、after、instead of、row和系统触发器。通过触发语法创建触发器,可指定触发条件和动作。触发器用例包...
    99+
    2024-05-21
    oracle
  • mysql触发器之触发器的增删改查操作示例
    本文实例讲述了mysql触发器之触发器的增删改查操作。分享给大家供大家参考,具体如下: 我们在创建触发器后,可以在包含触发器定义文件的数据文件夹中显示其定义。触发器作为纯文本文件存储在以下数据库文件夹中: ...
    99+
    2024-04-02
  • Oracle的触发器trigger如何使用
    本篇内容主要讲解“Oracle的触发器trigger如何使用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Oracle的触发器trigger如何使用”吧!一、触发器定义Oracle触发器是使用者...
    99+
    2023-06-29
  • MySQL 使用触发器记录用户的操作日志问题
    目录MySQL 使用触发器记录用户的操作日志一、创建用户数据表(emp)和保存操作日志的表(emp_log)二、为 emp 表创建触发器1、创建触发器 trigger_after_i...
    99+
    2022-12-08
    mysql记录用户的操作日志 mysql触发器 mysql触发器操作日志
  • MySQL 使用触发器记录用户的操作日志问题
    目录mysql 使用触发器记录用户的操作日志一、创建用户数据表(emp)和保存操作日志的表(emp_log)二、为 emp 表创建触发器1、创建触发器 trigger_after_insert_emp2、创建触发器 tr...
    99+
    2022-12-05
    mysql记录用户的操作日志 mysql触发器 mysql触发器操作日志
  • Oracle 触发器trigger使用案例
    目录一、触发器定义二、触发器分类三、触发器功能四、触发器语法五、触发器使用案例案例1:向job1表中插入一条数据后输出 欢迎加入 语句案例2:数据校验,不允许星期二和星期四向emp1...
    99+
    2024-04-02
  • Oracle触发器trigger怎么使用
    Oracle触发器(trigger)用于在指定的数据库操作发生时自动执行一段特定的代码,可以用于数据插入、更新或删除时执行特定的操作...
    99+
    2023-08-15
    Oracle trigger
  • mysql触发器的作用
    触发器是一种数据库对象,可在表上的特定事件(插入、更新或删除)发生时自动执行 sql 语句。其作用包括:维护数据完整性,确保表中数据符合特定规则自动执行任务,如发送电子邮件、更新其他表实...
    99+
    2024-08-06
    mysql
  • mysql触发器之创建多个触发器操作的示例分析
    这篇文章将为大家详细讲解有关mysql触发器之创建多个触发器操作的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。这次记录的内容mysql 版本必须得是5.7.2+...
    99+
    2024-04-02
  • 如何在Oracle中使用触发器
    如何在Oracle中使用触发器?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。触发器类型触发器在数据库里以独立的对象存储,它与存储过程和函数...
    99+
    2024-04-02
  • Oracle Trigger触发器的正确使用方法
    Oracle Trigger是一种在数据库中定义的特殊对象,它可以在特定的数据库操作(如插入、更新或删除)发生时自动触发相关的操作。...
    99+
    2023-09-23
    Oracle
  • MYSQL触发器的使用
    概念:触发器是一种特殊的储存过程,在满足定义条件操作时触发,并且自动执行触发器中预先设定好的定义的语句集合 触发器是特殊的储存过程 触发器是在对表操作时,满足条件就可以自动调用预先编译的sql语句 安全性 可以基于数据库的值使用户...
    99+
    2021-10-21
    MYSQL触发器的使用
  • 数据库触发器的作用
    这篇文章主要介绍数据库触发器的作用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!数据库中的触发器的作用:触发器主要用于强制复杂的业务规则和要求,还有助于强制引用的完整性,便于在添加,...
    99+
    2024-04-02
  • Oracle中的触发器trigger
    触发器是指被隐含执行的存储过程 一、创建DML触发器(before/after) 1、行触发器: 当一个DML操作影响DB中的多行时,对于其中复合触发条件的每行均触发一次(for e...
    99+
    2024-04-02
  • Oracle Form触发器执行顺序是怎样的
    这篇文章主要讲解了“Oracle Form触发器执行顺序是怎样的”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Oracle Form触发器执行顺序是怎样的”...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作