oracle触发器的写法有哪些
Oracle触发器的写法有三种:行级触发器、语句级触发器和嵌套表触发器。
- 行级触发器(Row-Level Triggers):在每行受影响的情况下触发,对于每一行的操作都会触发一次,可以在触发器中引用
NEW
和OLD
伪记录。
CREATE OR REPLACE TRIGGER trigger_name
BEFORE INSERT OR UPDATE OR DELETE ON table_name
FOR EACH ROW
BEGIN
-- 触发器逻辑
END;
/
- 语句级触发器(Statement-Level Triggers):在语句执行的情况下触发,对于一次语句中的所有行操作只触发一次,不能引用
NEW
和OLD
伪记录。
CREATE OR REPLACE TRIGGER trigger_name
BEFORE INSERT OR UPDATE OR DELETE ON table_name
BEGIN
-- 触发器逻辑
END;
/
- 嵌套表触发器(Nested Table Triggers):用于处理嵌套表的操作,可以在嵌套表的操作中触发,可以引用
NEW
和OLD
伪记录。
CREATE OR REPLACE TRIGGER trigger_name
BEFORE INSERT OR UPDATE OR DELETE ON table_name
FOR EACH ROW
DECLARE
TYPE nested_table_type IS TABLE OF table_name.column_name%TYPE;
nested_table nested_table_type;
BEGIN
-- 触发器逻辑
END;
/
以上是Oracle触发器的三种常见写法,根据实际需求选择合适的触发器类型进行编写。
版权声明
本文仅代表作者观点,不代表米安网络立场。
上一篇:android创建对象的方法是什么 下一篇:spring如何整合mybatis
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。