Oracle数据库零散知识06 -- Package的定义与简单触发器

时间:2023-03-09 14:24:58
Oracle数据库零散知识06 -- Package的定义与简单触发器
CREATE OR REPLACE PACKAGE pak_02 IS--包头
--这里可定义公共参数
FUNCTION fun_01 RETURN NUMBER;
PROCEDURE pro_01 ;
END; CREATE OR REPLACE PACKAGE BODY pak_02 IS--包体
--这里可定义私有变量
FUNCTION fun_01 RETURN NUMBER IS
BEGIN
RETURN 666;
END;
PROCEDURE pro_01 IS
BEGIN
dbms_output.put_line('cool');
END;
END;

  

简单触发器

CREATE OR REPLACE TRIGGER tri_01 --定义简单触发器
AFTER UPDATE --更新后触发
OF sname--针对某个列
ON student01--针对某个表
FOR EACH ROW--行级触发器
--declare
--在此可定义某些变量 BEGIN
IF updating THEN--updating 事件
dbms_output.put_line(:old.sname ||'change to'||:new.sname);--:old与:new虚表
END IF;
END; /*
触发器类型
dml触发器 分行级和语句级及before和after
ddl触发器
复合触发器
instead of 触发器,一般作用于视图
用户和系统事件触发器 */