【Oracle学习】之 触发器(Trigger)
来源:互联网 发布:中文域名不流行 编辑:程序博客网 时间:2024/06/05 17:33
oracle文档: https://docs.oracle.com/cloud/latest/db112/LNPLS/triggers.htm#LNPLS750
概述:
触发器是一种特殊类型的存储过程,编译后存储在数据库服务器中,当特定事件发生时,由系统自动调用执行,而不能由应用程序显式地调用执行。此外,触发器不接受任何参数。触发器主要用于维护那些通过创建表时的声明约束不能实现的复杂的完整性约束,并对数据库中特定事件进行控制和相应。
一、触发器的类型
(1) DML 触发器:
①基于表(TABLE):(有BEFORE、AFTER)
Ⅰ语句级触发器:只触发一次(不可使用new,old缓存)
Ⅱ 行级触发器:每一行(for each row)
②instead of:替代触发器替代数据库视图上的DML操作。
(2) 系统触发器:
①数据库级(Database):
②模式级(Schema):替代触发器替代数据库视图上的DML操作。(DDL、DCL)
二 、DML 触发器操作
//语法CREATE [OR REPLACE] TRIGGER trigger_nameBEFRORE|AFTER triggering_event [OF column_name]ON table_name[FOR EACH ROW][WHEN trigger_condition]DECLARE BEGINEXCEPTIONEND [trigger_name];
(1)语句级触发器 与 行级触发器
create or replace trigger tr1after delete on test2_student[for each row]begin if (deleting) then DBMS_OUTPUT.PUT_LINE('Deleting'); END IF;end;
(2)Before 和 After
注意:这两个只能用表,不能用于视图
after :在操作表之后触发(只能读取,不能修改)
before:操作表之前被触发。
(3)缓存:new 和 old
阅读全文
0 0
- 【Oracle学习】之 触发器(Trigger)
- ORACLE之触发器(trigger)
- oracle之触发器(trigger)
- ORACLE之 触发器 TRIGGER
- Oracle Study之--Oracle 触发器(Trigger)
- 触发器(trigger)学习
- Oracle之Trigger学习
- ORACLE PL/SQL 触发器(trigger)学习笔记
- ORACLE PL/SQL 触发器(trigger)学习笔记
- oracle 笔记 V 之触发器 (TRIGGER)
- Oracle Forms开发之触发器(trigger)
- Oracle PL/SQL 触发器(trigger)大全
- oracle数据库触发器(trigger)用法总结
- oracle 触发器 (trigger)
- Oracle Trigger 触发器
- oracle trigger (触发器)
- Oracle trigger --- 触发器
- Oracle-trigger触发器解读
- Java永久代去哪儿了
- 最长公共子序列
- Ajax函数封装与调用
- 移动端web开发常见问题
- 数据结构训练
- 【Oracle学习】之 触发器(Trigger)
- 判断是否安装某应用
- 屏幕分辨率与GUIStyle字体大小
- 开发者自述:我是怎样理解支持向量机(SVM)与神经网络的
- java笔记 多态
- JS作用域的比较
- js文件在导入时出现错误的解决办法
- 【XML开发】(1)通过"文档类型定义(DTD)"来定义XML标记语言
- 多线程之生产消费者【经典例子java】