2013-02-25 167 views
5

我要查询的列名数据库中查找表不知道表名查询列名查找表(有表的数量庞大)从Oracle SQL Developer中

我有工作庞大的数据库,并试图根据CFML代码和有问题页面的URL来查找位置,网站正在从中检索信息。我是ColdFusion的新手,但是我可以看到URL包含一些带有列名的ID引用。有些我已经能够轻松地找到其他人,我不知道列名是非常含糊的,例如'NTASKID'。

我的计划是尝试使用列名查询数据库,但Google向我提供了需要知道我没有的表名的查询。我猜这些例子可能对非规格化表格(?)更有用。

如果有人知道这样的查询,那就太棒了。另外,有人可以评论我是否正在调查的正确途径吗?

+0

尝试'SELECT * FROM ALL_TABLES' – 2013-02-25 17:05:10

+0

仅仅是明确的做你的意思是这样的:SELECT * FROM database_name where'column like'%task%'; – SunnyNewb 2013-02-25 17:11:01

+1

我不太适合Oracle,但是Oracle应该包含一个表ALL_TABLES来存储关于表的信息 – 2013-02-25 17:20:17

回答

12

奏效的查询是

SELECT * FROM ALL_TAB_COLUMNS 
WHERE COLUMN_NAME LIKE '%TASK%' 
AND owner = 'database_name'; 

这是“所有者”部分,我以前不知道的。每个人的回答肯定为进一步谷歌搜索开辟了道路。

干杯

1

如果你需要查找表名,那么'juergen d'回答了你的问题。如果你想查找列名,那么使用user_tab_columns/all_tab_columns来选择列名,其中table ='YOUR_TABLE' - 必须是大写的以及列名。