Oracle如何通过表名查询触发器
作者: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; --所有表
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。