oracle触发器
类型:两种
行级触发器 for each row
表级触发器
作用于
insert
delete
update
操作前后
表级触发器:
CREATE OR REPLACE TRIGGER tg_test AFTER INSERT ON t_student BEGIN dbms_output.put_line('插入了一条数据 !'); END;
行触发器:
CREATE OR REPLACE TRIGGER tg_test_row AFTER UPDATE ON t_student for each row BEGIN dbms_output.put_line('插入了一条数据 !'); END;
利用触发器实现只能在工作时间操作表的功能:
CREATE OR REPLACE TRIGGER checkforinsert BEFORE INSERT ON t_student BEGIN IF NOT (to_char(sysdate, 'day') not in ('星期六','星期日') AND to_char(SYSDATE, 'hh24') between 10 and 17) THEN raise_application_error(-20001, '非工作时间不能添加数据 !'); END IF END;