hola alguien me puede decir porque sale este error.
tema enviado por sara en SQL
tema iniciado el 10/05/2006
CREATE OR REPLACE PROCEDURE DEPART1
(condicion varchar2,
valor varchar2)
as
id_cursor integer;
v_comando varchar2(2000);
dept_no depart.dept_no%type;
localidad depart.loc%type;
v_nombre depart.dnombre%type;
begin
id_cursor:=dbms_sql.open_cursor;
v_comando:='select dept_no,dnombre,loc
from depart
where '||condicion|| ':val_1';
dbms_sql.parse(id_cursor,v_comando,DBMS_SQL.NATIVE);
DBMS_SQL.BIND_VARIABLE(id_cursor,':val_1',valor);
DBMS_SQL.BIND_VARIABLE(id_cursor,':val_1',valor);
DBMS_SQL.DEFINE_COLUMN(id_cursor,id_cursor,1,dept_no);
DBMS_SQL.DEFINE_COLUMN(id_cursor,2,localidad,14);
DBMS_SQL.DEFINE_COLUMN(id_cursor,3,v_nombre,14);
while dbms_sql.fetch_rows(id_cursor)>0 loop
dbms_sql.column_value(id_cursor,1,dept_no);
dbms_sql.column_value(id_cursor,2,localidad);
dbms_sql.column_value(id_cursor,3,v_nombre);
dbms_output.put_line(dept_no||localidad||v_nombre);
end loop;
dbms_sql.close_cursor(id_cursor);
exception
when others then
dbms_sql.close_cursor(id_cursor);
raise;
end DEPART1;
SQL>execute DEPART1('DNOMBRE LIKE', '%V');
ERROR en línea 1:
ORA-01002: recuperación fuera de secuencia
ORA-06512: en "SCOTT.DEPART1", línea 31
ORA-06512: en línea 1
SQL> execute DEPART1('DEPT_NO >',40);
ERROR en línea 1:
ORA-01002: recuperación fuera de secuencia
ORA-06512: en "SCOTT.DEPART1", línea 31
ORA-06512: en línea 1