熟悉Oracle触发器的类型:深入解析(oracle触发器类型)
Oracle触发器(Trigger)是一种用于在数据库的SQL语句操作的发生变化/更新时,自动触发一系列的操作。它可以联合表、视图、过程等对数据库数据进行操作。在数据库中,我们可以通过它来补偿一些没有完成的事务操作,如更新数据、删除数据等。
Oracle触发器有以下几种类型:
1. 表触发器(Table Trigger):表触发器是最常用的触发器,当在表中发生什么样的操作时,可以设置表触发器来处理,可以在对数据库中的表中进行DML操作或DDL操作时进行触发,比如新建表、修改表结构等。示例代码如下:
CREATE OR REPLACE TRIGGER tr_t1_new
AFTER INSERT ON t1
FOR EACH ROW
DECLARE
BEGIN
INSERT INTO t2 VALUES (:NEW.f1, :NEW.f2);
END;
2. 视图触发器(View Trigger):视图触发器不但可以用在视图上,表上也可以使用。视图触发器是对基表中发生某种事件或者对视图中发生某种事件可以设置触发器来处理。示例代码如下:
CREATE OR REPLACE TRIGGER tr_view_new
AFTER INSERT ON v_t1
FOR EACH ROW
DECLARE
BEGIN
INSERT INTO t2 VALUES (:NEW.f1, :NEW.f2);
END;
3. 登录触发器(Login Trigger):登录触发器可以在用户登录或注销时被触发,在初始化参数中可以指定初始化。示例代码如下:
CREATE OR REPLACE TRIGGER tr_login
AFTER LOGON ON DATABASE
DECLARE
userName VARCHAR2(10);
BEGIN
userName := USER;
IF userName SYSTEM
THEN
INSERT INTO t_login_log VALUES (userName,SYSDATE);
END IF;
END;
4. DDL触发器(DDL Trigger):DDL触发器是在数据库对象发生改变时触发,比如创建table、修改表等。示例代码如下:
CREATE OR REPLACE TRIGGER tr_table_create
AFTER CREATE ON DATABASE
DECLARE
tableName VARCHAR2(30);
BEGIN
tableName := ora_dict_obj_name;
INSERT INTO t_table_log VALUES (tableName,SYSDATE);
END;
以上就是关于Oracle触发器的几种类型,它们可以满足不同的要求来操作数据库中的数据,从而实现数据库的自动操作。
我想要获取技术服务或软件
服务范围:MySQL、ORACLE、SQLSERVER、MongoDB、PostgreSQL 、程序问题
服务方式:远程服务、电话支持、现场服务,沟通指定方式服务
技术标签:数据恢复、安装配置、数据迁移、集群容灾、异常处理、其它问题
本站部分文章参考或来源于网络,如有侵权请联系站长。
数据库远程运维 熟悉Oracle触发器的类型:深入解析(oracle触发器类型)
相关文章
- 解析Oracle数据库空间信息(oracle空间信息)
- 给自己一个新的开始:Oracle金牌代理让你重新出发(oracle金牌代理)
- 管理Oracle文件的有效方法(oracle文件管理)
- 深入Oracle:查看索引的技巧(oracle查看索引)
- 深入理解Oracle表结构:查看字段信息(查看oracle表的字段)
- 查询解析Oracle数据库中的多表关联查询(oracle多表关联)
- 利用Oracle中变量的优势(oracle中的变量)
- 深入Oracle参数:查看的有效姿势(oracle查看参数)
- 深入理解Oracle中的字符类型(oracle中字符类型)
- Oracle数据库时间格式修改指南(oracle时间格式修改)
- 深入了解Oracle数据库触发器类型(oracle触发器类型)
- 深入了解Oracle的触发器类型(oracle触发器类型)
- 排查Oracle错误日志的必修课(oracle错误日志)
- 深入了解Oracle触发器的类型(oracle触发器类型)
- Oracle中的除法计算实践研究(oracle除法计算)
- Oracle排名函数全面解析:实现高效数据排名与统计分析(oracle排名函数)
- 保障数据安全——深入了解Oracle数据安全产品(oracle数据安全产品)
- Oracle存储过程编写指南(oracle存储过程写法)
- 一台服务器,多个实例!深入了解Oracle多个SID的应用和管理方法(oracle多个sid)
- Oracle指定行操作:谁先谁后(oracle 指定行)
- Oracle窗口函数尽在掌握深入剖析全部开窗函数(oracle全部开窗函数)
- Oracle全文索引深入理解其设计与应用(oracle全文索引详解)
- 备份离线备份CX Oracle数据库的安全之道(cx oracle 离线)
- Oracle数据库中间表接口实现分析(oracle中间表接口表)
- 深入了解Oracle的主键重复数据(oracle主键重复数据)
- 解析Oracle数据库中主键字段的设置(oracle主键字段设置)
- 新增的用户Oracle用户数量增加态势本月新增加的用户(oracle中本月)
- Oracle中新建用户的步骤简要解析(oracle中新建用户)
- Oracle中使用正则表达式匹配字符串的方法(oracle中匹配字符串)
- Oracle中用条件加条件求和(oracle中加条件求和)
- Oracle中如何创建角色及其相关操作(oracle中创建角色)
- Oracle用户如何提升数据库运行效率(oracle usenl)