Pular para o conteúdo

Fóruns Banco de dados Oracle Variável em Cursor Oracle 9i Variável em Cursor Oracle 9i

#85943
Ishii
Participante

    Olá,

    Acho que você vai ter que usar o DBMS_SQL.

    Seria algo assim:


    Declare
    cCursor number;
    vStmt varchar2(2000);
    vCond varchar2(2000);
    vNumCha varchar2(60);
    vResult varchar2(2000); -- se o num_chassis for mesmo varchar2....

    vAux number;

    begin

    cCursor:= dbms_sql.open_cursor;

    vStmt: = 'select num_chassis from cad_veiculos '|| vCond;

    dbms_sql.parse (cCursor, vStmt, dbms_sql.v7); -- resolve a query

    dbms_sql.define_column( cCursor, 1, vNumCha);

    vAux:= dbms_sql.execute ( cCursor);

    while dbms_sql.fetch_rows (cCursor) > 0 then

    dbms_sql.column_value (cCursor, 1, vNumCha);

    vResult:= vResult ||vNumCha;

    end loop;

    dbms_sql.close_cursor( cCursor);

    end;

    E você usa o vResult para colher ou alimentar numa tabela ou para capturar mesmo os resultados..

    []s Ishii