Types of cursors and explanation each of them ?
Answer Posted / giri
Cursor is a pointer or handler to context area.there are
three types if cursors
1.implicit cursor: Every SQL statment between begin and end
are implicit cursors.sql%found,sql%notfound,sql%is open,sql%count these are the implicit cursor attributes.
2.explicit cursor:As a name user has to explicitly
create,open and close cursors.%found,%notfound,%is open,%count these are the explicit cursor attributes.
3. ref cursor: Reference cursor is a datatype which holds
the value of a cursor.
Is This Answer Correct ? | 1 Yes | 0 No |
Post New Answer View All Answers
Why do we use set serveroutput on?
What does := mean in pl sql?
What is a primary key called that is made up of more than one field?
Can I copy :old and :new pseudo-records in/to an oracle stored procedure?
Explain the steps needed to create the scheduled job?
Is sql database free?
What is rollback?
Is join and inner join the same?
What are the two parts of design view?
What are different types of keys?
What is parameter substitution in sql?
How many clustered indexes can be created on a table?
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: := . ( @ % ;
Write the order of precedence for validation of a column in a table? I. Done using database triggers. Ii. Done using integarity constraints
How exception handling is done in advance pl/sql?