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

 更新时间:2024年07月03日 09:35:47   作者:dongdong咚咚咚  
这篇文章主要介绍了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; --所有表

总结

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

相关文章

最新评论