首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Oracle中搜索包含特定变量名的触发器名称

在Oracle中搜索包含特定变量名的触发器名称
EN

Stack Overflow用户
提问于 2011-11-17 03:46:06
回答 1查看 231关注 0票数 1

我试图找到使用trig_tab变量的触发器名。我尝试了以下没有dbms_lob函数的查询,它给了我

ORA-00997:非法使用长数据类型

错误。

因此,我尝试使用dbms_lob.instr函数,但仍然给出了相同的错误。

Trigger_body字段是一个长数据类型。使用oracle 10g数据库。我该怎么做呢。

代码语言:javascript
复制
SELECT *
FROM   dba_triggers a
WHERE  owner = 'BOR'
       AND table_name = 'MAP_VIEW'
       AND dbms_lob.Instr(a.trigger_body, 'mv_pkg.trig_tab') > 0
ORDER  BY status,
          trigger_name; 
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-11-17 05:56:31

考虑查询dba_source / user_source以搜索源中出现的令牌

代码语言:javascript
复制
SELECT name,
       line
FROM   dba_source
WHERE  owner = 'BOR'
       AND TYPE = 'TRIGGER'
       AND Lower(TEXT) LIKE '%trig_tab%'
ORDER  BY name; 

代码语言:javascript
复制
SELECT name,
       line
FROM   user_source
WHERE  TYPE = 'TRIGGER'
       AND Lower(TEXT) LIKE '%trig_tab%'
ORDER  BY name; 
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8161841

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档