各位大侠,小弟这段话的目的是搜索数据库中所有字段,凡是数据存在12008值得字段,都存到SYSTEM.asearch表中去。
但是报错一直(line 10就是“execute immediate v_sql into v_count;
”这一行):
ERROR at line 1:
ORA-00942: table or view does not exist
ORA-06512: at line 10实在找不出错误的地方了。
跪求赐教!!!declare
v_const    number(11,0) := 12008;
v_sql    varchar2(5000);
v_count number(11,0);
cursor c_column is 
select owner,table_name,column_name from all_tab_columns where data_type = 'NUMBER' ;   
begin
  for v_column in c_column loop
v_sql := 'select count(*)  from '||v_column.owner||'.'||v_column.table_name||' where '||v_column.column_name||'='||v_const;  
    execute immediate v_sql into v_count;
    if v_count > 0 then
      insert into SYSTEM.asearch(owner_name,table_name,column_name) values (v_column.owner,v_column.table_name,v_column.column_name);  
    end if;
  end loop;    
commit;
end;
/