create or replace procedure search_matter(empno varchar2)
as

sql_stmt varchar2(200);
stmt varchar2(200);
v_table_name varchar2(200);
val_pres number;
inp_value varchar2(200);

type obj_typ is table of cols.column_name%type
index by binary_integer;

type all_col is table of varchar2(100)
index by binary_integer;

typ_obj_typ obj_typ;
typ_all_col all_col;

begin

select object_name
bulk collect into typ_obj_typ
from user_tables,user_objects
where table_name = object_name
AND object_type = 'TABLE';

select empno into inp_value from dual;
dbms_output.put_line('inp value : '||inp_value);

for i in typ_obj_typ.first..typ_obj_typ.last
loop
v_table_name := NULL;
v_table_name := typ_obj_typ(i);
dbms_output.put_line(i||':'||typ_obj_typ(i));
dbms_output.put_line('....................');

sql_stmt := 'select column_name from cols where table_name = :1 and data_type in (''CHAR'', ''VARCHAR2'', ''NCHAR'', ''NVARCHAR2'',''NUMBER'')';
EXECUTE IMMEDIATE sql_stmt bulk collect into typ_all_col using typ_obj_typ(i);

for inside in typ_all_col.first..typ_all_col.last loop
dbms_output.put_line('sql stmt: '||sql_stmt);
dbms_output.put_line('column name: '||typ_all_col(inside)||'table name: '||typ_obj_typ(i));

stmt := 'select count(*) from ||typ_obj_typ(i)||';
EXECUTE_IMMEDIATE stmt into val_pres ;
if val_pres = 1 then
dbms_output.put_line('value present col name: '||typ_all_col(inside)||'table name :'||typ_obj_typ(i));
end if;

end loop;
dbms_output.put_line('....................');
end loop;

exception when others
then
dbms_output.put_line('sql code '||sqlcode||'Table name: '||v_table_name);
dbms_output.put_line('sql message '||sqlerrm);

end;

Compile-time I am getting below error, Plz help to resolve.

LINE/COL ERROR
-------- -----------------------------------------------------------------
47/23 PLS-00103: Encountered the symbol "STMT" when expecting one of
the following:
:= . ( @ % ;


No Answer is Posted For this Question
Be the First to Post Answer

Post New Answer

More SQL PLSQL Interview Questions

What is execute immediate?

0 Answers  


What is a primary key called that is made up of more than one field?

0 Answers  


what is a database lock ? : Sql dba

0 Answers  


What is sqlservr exe?

0 Answers  


What is left inner join in sql?

0 Answers  






What is data types in sql?

0 Answers  


Can a view be updated/inserted/deleted?If Yes under what conditions?

3 Answers  


Why function is used in sql?

0 Answers  


How to run sql*plus commands in sql developer?

0 Answers  


Why you are not able to create a table using select command,if it is having a LONG column? for eg:create table test as select * from test1 here test1 containg a column having LONG datatype...

1 Answers  


what is meant by databases

4 Answers  


select sal from emp group by sal

3 Answers   TCS,


Categories