--查询触发器要定义的hr用户下的表DEPARTMENTS
SQL> conn hr/hr; Connected. SQL> select * from tab;
TNAME TABTYPE CLUSTERID ------------------------------ ------- ---------- COUNTRIES TABLE DEPARTMENTS TABLE EMPLOYEES TABLE EMP_DETAILS_VIEW VIEW JOBS TABLE JOB_HISTORY TABLE LOCATIONS TABLE REGIONS TABLE
8 rows selected.
--创建触发器: SQL> CREATE OR REPLACE TRIGGER tr_dept_time 2 BEFORE INSERT OR DELETE OR UPDATE 3 ON departments 4 BEGIN 5 IF (TO_CHAR(sysdate,'DAY') IN ('星期六', '星期日')) OR (TO_CHAR(sysdate, 'HH24:MI') NOT BETWEEN '08:30' AND '18:00') THEN 6 RAISE_APPLICATION_ERROR(-20001, '不是上班时间,不能修改departments表'); 7 END IF; 8 END; 9 /