SELECT * from ALL_OBJECTS 返回各种过程/包/表/其他数据库对象的名称。我想查看匹配字符串的 PL/SQL 代码。我该怎么做呢?
类似于:(伪代码)SELECT * FROM all_code WHERE line_of_code like '%mytext%'
最佳答案
使用类似的东西:
SELECT *
FROM USER_SOURCE
WHERE type='PACKAGE'
AND NAME='PACKAGE_NAME'
ORDER BY type, name, line;
有很多选项,查看 USER_SOURCE 表。
要搜索字符串的所有代码:
SELECT *
FROM ALL_SOURCE
WHERE UPPER(text) LIKE UPPER('%what I am searching for%')
ORDER BY type, name, line
请注意, View 代码不包含在
_SOURCE
中。表。查看代码存储在[USER|ALL|DBA]_VIEWS.TEXT
这是一个 LONG 列并且难以查询。
关于oracle - 搜索 PL/SQL 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/630847/