Oracle 中 根据值 查询 所在 表和字段
-------------------- -- 这里是查询 数字型字段值
/*declare
CURSOR cur_query IS
select table_name, column_name, data_type from user_tab_columns;
a number;
sql_hard varchar2(2000);
vv number;
begin
for rec1 in cur_query loop
a:=0;
if rec1.data_type ='NUMBER' THEN
a := 1;
end if;
if a>0 then
sql_hard := '';
sql_hard := 'SELECT count(*) FROM '|| rec1.table_name ||' where '
||rec1.column_name|| '=''TYRCE0BF26AB5C586B3 '' ';
dbms_output.put_line(sql_hard);
execute immediate sql_hard INTO vv;
IF vv > 0 THEN
dbms_output.put_line(rec1.table_name||'--'||rec1.column_name);
end if;
END IF;
end loop;
end;*/
查询字符串类型:
declare
CURSOR cur_query IS
select a.table_name, a.column_name, a.data_type from user_tab_columns a
where 1=1
and (lower(a.data_type) = 'varchar2' or lower(a.data_type) = 'char')
and NOT a.TABLE_NAME like '%$%'
and NOT a.TABLE_NAME like '%+%'
and NOT a.TABLE_NAME like '%=%'
ORDER BY A.TABLE_NAME ASC
;
a number;
sql_hard varchar2(2000);
vv number;
rscount number;
str varchar2(2000);
num number;
findValue varchar2(500) :='R2186E3DC09B88E1AF '; -- 要查询的字符串值
begin
rscount:=0; str:='TRUNCATE table tmp_test';
execute immediate str; str:='drop table tmp_test';
execute immediate str; str:='CREATE GLOBAL TEMPORARY TABLE tmp_test (tab_name varchar2(500), col_name varchar2(500)) ON COMMIT PRESERVE ROWS';
execute immediate str; ----使用动态SQL语句来执行 for rec1 in cur_query loop
rscount:= rscount + 1;
a:=0;
--if rec1.data_type ='VARCHAR2' or rec1.data_type='CHAR' THEN
if rec1.data_type ='VARCHAR2' or rec1.data_type='CHAR' THEN
a := 1;
end if;
if a>0 then
sql_hard := '';
sql_hard := 'SELECT count(*) FROM '|| rec1.table_name ||' where '
--||rec1.column_name|| ' =''wu''';
||rec1.column_name|| ' ='''|| findValue || '''';
--dbms_output.put_line(sql_hard);
--dbms_output.put_line( '**** ' || rec1.table_name||'--'||rec1.column_name);
execute immediate sql_hard INTO vv;
IF NVL(vv,0) > 0 THEN
dbms_output.put_line(rec1.table_name||'--'||rec1.column_name);
str:= 'insert into tmp_test '
|| ' select ''' || rec1.table_name || ''' as tab_name,''' || rec1.column_name || ''' as col_name from dual'; execute immediate str; str:= 'commit';
execute immediate str;
end if;
END IF;
end loop; --str:= 'select * from tmp_test';
--execute immediate str; end; -- 运行完以后 执行
/*
select * from tmp_test;
*/
Oracle 中 根据值 查询 所在 表和字段的更多相关文章
- Oracle中V$SESSION等各表的字段解释,Oracle官方解释
		一.常用的视图 1.会话相关视图 View Description V$PROCESS Contains information about the currently active processe ... 
- 恢复oracle中误删除drop掉的表 闪回的方法
		恢复oracle中误删除drop掉的表 查看回收站中表 --需要在其所在用户下查询 回收站对象 select object_name,original_name,partition_name,ty ... 
- 对于Oracle中分页排序查询语句执行效率的比较分析
		转自:http://bbs.csdn.net/topics/370033478 对于Oracle中分页排序查询语句执行效率的比较分析 作者:lzgame 在工作中我们经常遇到需要在Oracle中进行分 ... 
- Oracle中使用游标转换数据表中指定字段内容格式(拼音转数字)
		应用场景:将数据表TB_USER中字段NNDP的内容中为[sannanyinv]转换为[3男1女] 主要脚本:一个游标脚本+分割字符串函数+拼音转数字脚本 操作步骤如下: 1.创建类型 create ... 
- B表中的pid对应A表中id,查询A表中数据,根据b表中对应a表中该id的数据数目排序
		B表中的pid对应A表中id,查询A表中数据,根据b表中对应a表中该id的数据数目排序 select a.*,count(*) as c from a left join b on a.id=b.ai ... 
- ORACLE中如何找出大表分布在哪些数据文件中?
		ORACLE中如何找出大表分布在哪些数据文件中? 在ORACLE数据中,我们能否找出一个大表的段对象分布在哪些数据文件中呢? 答案是可以,我们可以用下面脚本来找出对应表的区.段分别位于哪些数据文件 ... 
- SQL查询每个表的字段数量
		--SQL查询每个表的字段数量select b.[name], count(*) As AllCount,ISNULL(ISNULL(sum(case when isnullable=0 then 1 ... 
- Java 通过JDBC查询数据库表结构(字段名称,类型,长度等)
		Java 通过JDBC查询数据库表结构(字段名称,类型,长度等) 发布者:唛唛家的豆子 时间:2012-11-20 17:54:02 Java 通过JDBC查询数据库表结构(字段名称,类型,长 ... 
- Oracle中的层次查询详解
		1 语法格式 select [level], column, expr... from table [where condition] start with condition connect by ... 
随机推荐
- Python 结巴分词(2)关键字提取
			提取关键字的文章是,小说完美世界的前十章: 我事先把前十章合并到了一个文件中: 然后直接调用关键字函数: import sys sys.path.append('../') import jieba ... 
- python(5)字符串处理 (sub,replace,find,index,upper,strip,split,sub翻页
			一,sub和replace的用法 re.sub 函数进行以正则表达式为基础的替换工作 re.sub替换到目标字符串中的a,b或者c,并全部替换 另加上sub翻页操作: re.sub('start=\d ... 
- Android listview中使用checkbox
			最近比较忙碌,我也不知道忙的什么东西,打算写的博客写了一半,还没写完,今天先扯一扯项目中遇到的一个问题,一方面防止以后遇到这个问题忘记如何解决,另一方面希望可以提供给遇到同样问题的朋友一个思路.下面开 ... 
- Java中的hashCode 方法
			http://www.cnblogs.com/dolphin0520/p/3681042.html 
- html 其它标签
			<pre> 标签 , 如果写的内容在记事本中 在网页上原样输出 <fieldset> 外框 <p> 段落 <sub>下标 <sup> 上标 ... 
- js上移、下移、置顶、置底功能实现
			实现页面上列表内容上移.下移.置顶.置底 功能,主要实现思路是节点操作,比如说:上移,直接把点击项移动到前一个节点,以此类推,当然实际代码实现还要加些判断,如当前点击操作项是否已经是置底或置底了,如果 ... 
- Log4Net在Windows服务中不能记录日志  z
			解决方案: 在Windows安装服务的“serviceProcessInstaller1”中修改Account属性为LocalSystem.见下图 后来查了一下这个Account属性 说白了还是权限的 ... 
- 无法创建spool文件
			是因为没有用管理员运行CMD,并且数据库不需要使用超级管理员登录. 
- 20145305解佳玲 《Java程序设计》第1周学习总结
			教材学习内容总结 第一章 Java平台概论 1.先了解了JAVA的历史 2.Java三大平台:Java SE.Java EE与Java ME 3.Java SE的四个组成部分:JVM.JRE.JDK与 ... 
- JAVA中抽象类的一些总结
			抽象类和普通类一样,有构造函数.抽象类中有一些属性,可以利用构造方法对属性进行初始化.子类对象实例化的时候先执行抽象类的构造,再执行子类构造. 抽象类不能用final声明.因为抽象类必须有子类继承,所 ... 
