Buenos días, estoy intentado exportar el valor de un CLOB a un fichero de S.O pero me estoy encontrando con errores.
Primeramente he creado un directorio:
SQL> create directory PRUEBA_VISTA2 as 'c:\temp';
y he dado permisos al usuario que va a realizar la operacion:
SQL> grant read,write on PRUEBA_VISTA2 to oficinaadm;
grant read,write on PRUEBA_VISTA2 to oficinaadm
*
ERROR en línea 1:
ORA-00942: table or view does not exist
SQL> grant read,write on directory PRUEBA_VISTA2 to oficinaadm;
Este es mi procedimiento:
declare
fichero utl_file.file_type;
texto clob;
cantidad binary_integer:=32767;
posicion integer:=1;
texto_l varchar2(32767);
begin
select campo1 into texto from tabla1;
fichero:=utl_file.fopen('PRUEBA_VISTA', 'texto.txt','w',32767);
LOOP
DBMS_LOB.read (texto, cantidad, posicion, texto_l);
UTL_FILE.put(fichero, texto_l);
posicion := posicion + cantidad;
END LOOP;
utl_file.fclose(fichero);
end;
/