Oracle如何通过表名查询触发器

Oracle通过表名查询触发器

  • plqsl 版本:13.0.2
  • Oracle版本:Oracle Database 11g Express Edition Release 11.2.0.2.0 – 64bit Production

查询命令

-- 注意表名为大写select a.trigger_name,a.status,a.TRIGGER_BODY,a.* from all_triggers a where table_name='TABLE_NAME';

可查出对应表名下的所有触发器名称,触发器的状态(是否可用),触发器body(trigger_body,即触发器声明)

注意:通过查看 ** TRIGGER_BODY **可查看触发器创建脚本。

举例验证

select a.trigger_name,a.status,a.TRIGGER_BODY,a.* from all_triggers a where table_name='USER_INFO'

Oracle中查看触发器使用到的SQL

ORACLE 查出表所有的触发器及触发器详细信息

1、查all_triggers表得到trigger_name

select trigger_name from all_triggers where table_name='XXX';  

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

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

3、在Oracle数据库中查询所有触发器、存储过程、视图、表

  • 方法1:
 --所有触发器
Select object_name From user_objects Where object_type='TRIGGER';

--所有存储过程
Select object_name From user_objects Where object_type='PROCEDURE';

--所有视图
Select object_name From user_objects Where object_type='VIEW';  

 --所有表
Select object_name From user_objects Where object_type='TABLE';
  • 方法2:
Select * From user_triggers; --所有触发器
Select * From user_procedures; --所有存储过程
Select * From user_views; --所有视图
Select * From user_tables; --所有表

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

来源链接:https://www.jb51.net/database/323656zhg.htm

© 版权声明
THE END
支持一下吧
点赞15 分享
评论 抢沙发
头像
请文明发言!
提交
头像

昵称

取消
昵称表情代码快捷回复

    暂无评论内容