Skip to content

适用虚谷数据库版本

v12.9



适用虚谷数据库版本

v12.9


ALL_TRIGGERS

📄字数 1.3K
👁️阅读量 加载中...

功能描述

ALL_TRIGGERS系统视图用于存储和管理系创建的触发器信息。

字段说明

序号字段名类型说明V11V12
0DB_IDINTEGER库ID
1SCHEMA_IDINTEGER模式ID
2USER_IDINTEGER属主ID
3OBJ_IDINTEGER触发对象的ID
4TRIG_IDINTEGER触发器ID
5TRIG_NAMEVARCHAR触发器名
6TRIG_TIMEINTEGER触发时机
7TRIG_EVENTINTEGER触发事件
8TRIG_TYPEINTEGER触发器类型
9TRIG_CONDVARCHAR触发条件表达式
10LANGUAGECHAR过程语言类别
11DEFINECLOB过程定义的文本
12CREATE_TIMEDATETIME创建时间
13ENABLEBOOLEAN是否使能
14VALIDBOOLEAN是否有效
15IS_SYSBOOLEAN是否系统内建
16COMMENTSVARCHAR注释信息
17RESERVED1VARCHAR保留字段
18RESERVED2VARCHAR保留字段

TRIG_EVENT

ID对象名含义
1INSERT插入时触发
2UPDATE更新时触发
3INSERT OR UPDATE插入或更新时触发
4DELETE删除时触发
5INSERT OR DELETE插入或删除时触发
6UPDATE OR DELETE更新或删除时触发
7INSERT OR UPDATE OR DELETE插入或更新或删除时触发
8LOGON登录数据库时触发

TRIG_TYPE

ID对象名含义
1FOR EACH ROW行级触发器,如果变更多行数据,会被触发多次
2FOR STATEMENT语句级触发器,即使变更多行数据也只会被触发一次

TRIG_TIME

ID对象名含义
1BEFORE触发器在指定事件发生之前执行
2INSTEAD触发器在事件发生后执行,如日志记录或更新其他表
4AFTER触发器用于替代事件的默认行为,主要用于视图上

应用举例

  • 查询触发器的定义文本、触发时间、触发类型等相关信息
sql
SQL> CREATE TABLE tab_trigger(deptno INT);
-- 创建触发器
SQL> CREATE OR REPLACE TRIGGER tri_info BEFORE INSERT ON tab_trigger
         FOR EACH ROW
         WHEN(deptno>=50)
         BEGIN
         RAISE_APPLICATION_ERROR(-20000,'部门号超出规定');
         END;

SQL> SELECT * FROM ALL_TRIGGERS WHERE trig_name='TRI_INFO';
+-------+-----------+---------+---------+---------+-----------+-----------+------------+-----------+--------------------+----------+--------+--------------------------+--------+-------+--------+----------+-----------+-----------+
| DB_ID | SCHEMA_ID | USER_ID | OBJ_ID  | TRIG_ID | TRIG_NAME | TRIG_TIME | TRIG_EVENT | TRIG_TYPE |     TRIG_COND      | LANGUAGE | DEFINE |       CREATE_TIME        | ENABLE | VALID | IS_SYS | COMMENTS | RESERVED1 | RESERVED2 |
+-------+-----------+---------+---------+---------+-----------+-----------+------------+-----------+--------------------+----------+--------+--------------------------+--------+-------+--------+----------+-----------+-----------+
| 1     | 1         | 1       | 1048582 | 1048583 | TRI_INFO  | 1         | 1          | 1         | ("DEPTNO") >= (50) | PLSQL    | <CLOB> | 2025-06-26 19:16:33.425  | T      | T     | F      | <NULL>   | <NULL>    | <NULL>    |
+-------+-----------+---------+---------+---------+-----------+-----------+------------+-----------+--------------------+----------+--------+--------------------------+--------+-------+--------+----------+-----------+-----------+

相关系统表