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 ='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|| ' like''00110000%''';
--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;大家看看老里有问题报错信息是18行命令未正确结束
解决方案 »
- ORA-20000: Cannot parse for clause: FORCOLUMNS size 1
- oracle相关知识备份1
- 怎样把不同的机器上的ORACLE数据提取到第三台机器的ORACLE中?
- 连接字符串过长
- 如何在oracle增加字符
- linux9.0下安装oracle920的详细安装步骤
- ora-00604:递归SQL层1出现错误 ,ora-06553:pls-213:standard包不可访问 出现这样的错误怎么解决呀。
- SQL查询语句
- 安装oracle8i
- Oracle8i不能在WINXP上安装吗?
- oracle 主机字符串地址
- 如何对“大字段”(如图片)进行批量移植操作
select table_name, column_name, data_type from user_tab_columns;
看看是不是存在一些特殊字符组成的table_name,例如BIN$85+atEUITBGLo3eWKLVgyg==$0
根据你的实际情况,用table_name长度,OR正则表达式之类的方法过滤掉这些oracle自己产生的table_name