oracle觸發器樣例

觸發器樣例

create trigger logon_ip_control
after logon on database
declare
  ip STRING(30);
  user STRING(30);
begin
SELECT SYS_CONTEXT('USERENV','SESSION_USER') into user from dual;
SELECT SYS_CONTEXT('USERENV','IP_ADDRESS') into ip from dual;
if user='batter' 
  THEN
      IF ip not in ('192.168.1.84','192.168.2.235','192.168.1.166',
                   '192.168.1.237','192.168.1.228','192.168.1.113') 
      THEN raise_application_error(-20001,'用戶 '||user||' 由於權限過大,現已回收);
      END IF;
END IF;
end;




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章