如何查询一个oracle数据库中所有表的所有字段哪个包含特定字符串?

比如我要查询一个字符串"cc" 我想看看我的数据库中所有表中到底哪个表哪个字段的那个值是cc 怎么查

这个不可能使用简单一个查询语句来实现这个功能。因为你的这个需要基本都是比一定逻辑的查询,实现起来有相当的难度。因为首先要确定有多少张表,每张表中有多少个字段,然后才能实现某个字段中的某条记录包含你所需要的这个特定的值。
这仅仅是一个简单的思路,供参考。
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-10-16
写一个存储过程
将show tables的结果放入一个集合中
然后遍历这个集合
desc table
得到单个表的字段
然后组织查询语句 select * from table where 字段1=‘cc’ or 字段2=’cc‘.......字段n='cc'

运行脚本看结果
这只是思路本回答被提问者和网友采纳
第2个回答  2013-02-22
你这个要求基本上用一两句t-sql语句无法实现。另外如果是大数据,基本上一查就死了,这个需求基本上属于无理取闹的。因为要实现你的要求,首先要在代码里面获取数据库都有哪些表,这些表都有哪些字段,然后在一个个字段去比较。想想让数据库来实现这些东西都头痛。
不知道全文搜索是不是有这个功能,反正想自己写几行代码就实现这个功能基本上无解。
相似回答