同时创建两个触发器的语句在PL/SQL中执行
2017-03-23 09:12
同时创建两个触发器的语句在PL/SQL中执行有问题
1 2 3 4 5 6 7 8 9 |
create or replace trigger privilege_trigger after update or delete or insert on privilege_infobegin insert into privilege_refresh values(sysdate, '1'); end; create or replace trigger role_trigger after update or delete or insert on user_role_map begin insert into privilege_refresh values (sysdate, '1'); end; |
我把代码复制到PL/SQL里面 执行的时候,它会默认只生成一个trigger,把下面生成第二个trigger的语句当成第一个trigger的一部分。
在end后面要加出发器的名字,在两个触发器之间还要加 /
1 2 3 4 5 6 7 8 9 10 11 |
create or replace trigger privilege_trigger after update or delete or insert on privilege_infobegin insert into privilege_refresh values(sysdate, '1'); end privilege_trigger; / create or replace trigger role_trigger after update or delete or insert on user_role_map begin insert into privilege_refresh values (sysdate, '1'); end role_trigger; / |
有editplus里用 正则表达式 替换 "end;" 为“end;\n /”批量处理触发器后跟有其他脚本不能执行的问题;