当前位置:  开发笔记 > 数据库 > 正文

搜索PL/SQL代码

如何解决《搜索PL/SQL代码》经验,为你挑选了1个好方法。

SELECT*from ALL_OBJECTS返回各种过程/ packages/tables /其他db对象的名称.我想在PL/SQL代码中查找匹配的字符串.我该怎么做呢?

类似于:(伪代码)SELECT*FROM all_code WHERE line_of_code like'%mytext%'



1> Ascalonian..:

使用类似的东西:

    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

请注意,视图代码不包含在_SOURCE表中.查看代码存储在[USER|ALL|DBA]_VIEWS.TEXTLONG列中,难以查询.


或ALL_SOURCE WHERE OWNER = [架构]
您可能希望"ORDER BY type,name,line"以使结果更清晰.
使它不区分大小写:上部(文本)像上部(%我正在搜索%')
我不相信all_source会显示其他用户拥有的包体.如果您有权访问,可以使用dba_source查看这些内容.
推荐阅读
linjiabin43
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有