Boa tarde galera,
Preciso extrair dados para um arquivo de texto, querendo ser performático
tentei utilizar o FORALL pois são muitos dados,
Para cada vez que acessar o aquivo gravar de 500 em 500 registros..
BEGIN
file_handle := UTL_FILE.OPEN('/PASTA/DESTINO','CLIENTE_EXTERNO.TXT','w', 1000);
OPEN CURSOR
LOOP
FETCH CURSOR BULK COLLECT INTO v_ID, V_NOME_CLIENTE LIMIT 500;
EXIT WHEN v_ID.COUNT = 0;
FORALL i IN 1 .. v_ID.COUNT
EXECUTE IMMEDIATE 'BEGIN UTL_FILE.PUT_LINE(:1, :2); END;'
USING file_handle, V_NOME_CLIENTE(i);
END LOOP;
...
...
...
Lembrando que o FORALL só funciona em DML (insert, update, delete), sendo assim tentei utilizar
o EXECUTE IMMEDIATE.
E o erro que me dá é esse:
PLS-00457: expressions have to be of SQL types
Alguém têm alguma ideia melhor ?
Valew
Abraços