Oracle 中查看用户建立的所有触发器

 在Oracle中的创建触发器后,必须对其进行管理,比如修改触发器或者删除无效的触发器,我们可以把用户创建的所有触发器遍历出来,然后再进行操作。

   如果你具有系统管理器的权限,那么在直接用SYS登录后,用下面的语句:

SELECT OBJECT_NAME FROM DBA_OBJECTS WHERE OBJECT_TYPE='TRIGGER'

 

 

   就可以把所有用户的触发器选择出来,当然也可以选择特定用户的,如

SELECT OBJECT_NAME FROM DBA_OBJECTS WHERE OBJECT_TYPE='TRIGGER' AND OWNER='SCOTT'

   但是如果你只有普通用户的权限,上面的操作无法进行的。我们可以用如下的语句进行触发器的遍历

SELECT NAME 
FROM USER_SOURCE
WHERE TYPE='TRIGGER'
GROUP BY NAME 

 

   这样就可以了!


 

查all_triggers表得到trigger_name

 



select trigger_name from all_triggers where table_name='XXX'; 

 


 

根据trigger_name查询出触发器详细信息

 


 

select text from all_source where type='TRIGGER' AND name='TR_XXX';


查询指定表的触发器信息,注意表名字母大小写区分。

  select * from all_triggers WHERE table_name='表名';


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