gpt4 book ai didi

oracle10g - 如何从 oracle 数据库中找到与特定表相关的所有代码和触发器?

转载 作者:行者123 更新时间:2023-12-01 08:42:13 25 4
gpt4 key购买 nike

我有一个问题,我需要从数据库中删除与某些表相关的所有代码和触发器,以便安装 Solaris 包。很长很复杂的故事,但我需要重新开始。

我已经设法删除了所有现有的表/同义词,但是如何从 sqlplus 中找到相关的代码/触发器?

很遗憾,删除数据库并重新创建它是不可行的。

最佳答案

好吧,原来所有的表名都以我的模块名 DAP 为前缀。

所以,用 sqlplus 查找所有表名和公共(public)同义词:

select table_name from all_tables where table_name like 'DAP%';
select synonym_name from all_synonyms where table_name like 'DAP%';

获取触发器和序列列表

select trigger_name from all_triggers where table_name like 'DAP%';
select sequence_name from all_sequences where sequence_name like 'DAP%';

获取所有约束的列表

select table_name, constraint_name from all_constraints where table_name like 'DAP%';

获取DAP相关代码:

select text from dba_source where name like 'DAP%';

我现在可以编写一个删除所有内容的脚本。

关于oracle10g - 如何从 oracle 数据库中找到与特定表相关的所有代码和触发器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1129288/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com