我想在我的所有程序包和函数中搜索某个短语。
由于可以使用 toad 检索已编译过程的代码,因此我假设全文存储在某个数据字典表中。有谁知道那会在哪里?
非常感谢
我想在我的所有程序包和函数中搜索某个短语。
由于可以使用 toad 检索已编译过程的代码,因此我假设全文存储在某个数据字典表中。有谁知道那会在哪里?
非常感谢
你可以做类似的事情
SELECT name, line, text
FROM dba_source
WHERE upper(text) like upper('%<<your_phrase>>%') escape '\'
Toad 的“对象搜索”例程将查看 ALL_SOURCE(和数据字典的其他部分)。当然,这将仅限于允许连接用户查看的对象。如果您可以访问 DBA 版本,那就太好了。如果没有,您将不会搜索所有内容。
此外,如果您回到 Oracle 7,或者您的数据库从 Oracle 7 迁移到 8i 或 9i(不确定 10 或 11),则触发器源可能不会出现在 user_source 或 all_source 视图中。最好检查一下。我发现让它出现的最简单方法是进行实际修改——例如,添加一个空格——然后重新编译触发器。
你的意思是使用PL/SQL?还是只使用 TOAD?我知道您可以使用“查找对象”(或类似的东西)功能手动搜索所有对象,如 procs、表等...