系統許可權ADMINISTER DATABASE TRIGGER的作用

warehouse發表於2010-07-11
基於database建立一個系統trigger,遇到了許可權問題,查了一下原來是需要ADMINISTER DATABASE TRIGGER許可權[@more@]SQL> create or replace trigger trigg_db 2 after logon on database 3 -- for each row 4 declare 5 -- local variables here 6 begin 7 insert into t_trace values(sys_context('userenv','ip_address'), 8 sys_context('userenv','terminal'), 9 sys.login_user, 10 sysdate, 11 sys.sysevent); 12 end trigg_db; 13 / after logon on database * 第 2 行出現錯誤: ORA-01031: 許可權不足 --============================ SQL> grant ADMINISTER DATABASE TRIGGER to test; 授權成功。 SQL> --=========================== SQL> create or replace trigger trigg_db 2 after logon on database 3 -- for each row 4 declare 5 -- local variables here 6 begin 7 insert into t_trace values(sys_context('userenv','ip_address'), 8 sys_context('userenv','terminal'), 9 sys.login_user, 10 sysdate, 11 sys.sysevent); 12 end trigg_db; 13 / 觸發器已建立 SQL> --========================= To create a trigger on DATABASE, you must have the ADMINISTER DATABASE TRIGGER privilege. If this privilege is later revoked, then you can drop the trigger, but not alter it. --========================

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/19602/viewspace-1035142/,如需轉載,請註明出處,否則將追究法律責任。

相關文章