我正处于一个项目中,该项目要求我查询数据库并使用用户指定的列生成临时报告。
当我在不同的数据库上使用DB2时,几乎没有关于表和列的文档,我也可以使用下面提到的查询来获取我想要的内容
select * from syscat.procedures where procschema like 'ABCD' and text like '%your text%';
select * from syscat.columns where tabschema like 'ABCD' and colname like '%yourtext%';
在我的新项目中,我将在不同的数据库上与Oracle合作,这次我没有可以告诉我哪个列中有哪些信息的文档。此外,这个项目中没有人可以帮助我。
在Oracle中是否有类似我上面提到过的那些查询,这可以帮助我从数据库中找到我需要的东西?
欢迎来到Oracle!
自从您标记了SQL Developer之后,我将向您展示如何在那里做您想做的事情。
但首先,您感兴趣的意见:
但是,要使用GUI来搜索这些视图......
您可以使用报告来学习我们的数据字典。
您可以采用几种不同的方式,但这是一个示例,列报告。
在浏览时,您可以在“日志”部分中观察语句面板。所以你可以看到我们正在查询
通过查看为此报告运行的查询,您可以看到我们正在访问以下数据字典视图:
SQL的片段:
owner sdev_link_owner,
table_name sdev_link_name,
'TABLE' sdev_link_type
from sys.dba_tab_columns
where (:owner is null
or instr(
owner,
DBA_TAB_COLUMNS(Oracle Docs)
您会注意到DBA_TAB_COLUMNS和ALL_TAB_COLUMNS都有。只有“超级用户”才能查询DBA_视图。任何人都可以查看ALL_视图,但您只能看到数据库权限授予访问权限的对象。
还有USER_视图 - 它们只显示您需要了解的有关您登录用户的模式的信息。在Oracle中,架构和用户基本相同。
所以,试试报告,回答你的问题。检查我们正在使用的SQL,学习数据字典。
您还可以使用我们的Search Feature - 它是为查找数据库中的内容而构建的。
祝您的甲骨文之旅顺利!