Como estan?
Bien, soy nuevito en esto de oracle asi que tal vez pregunte cosas muy triviales, en tales casos sepan disculpar.
Mi duda es la siguiente, estoy tratando de utilizar UTL_FILE para guardar el resultado de una consulta en un archivo. Para ello como nunca use UTL_FILE empece corriendo un ejemplo q vi por ahi para ver q tal.
1)CREATE DIRECTORY test_dir AS 'C:\';
2)DECLARE
fileHandler UTL_FILE.FILE_TYPE;
BEGIN
fileHandler := UTL_FILE.FOPEN('test_dir', 'test_file.txt', 'W');
UTL_FILE.PUTF(fileHandler, 'Look ma, I''m writing to a file!!!\n');
UTL_FILE.FCLOSE(fileHandler);
EXCEPTION
WHEN utl_file.invalid_path THEN
raise_application_error(-20000, 'ERROR: Invalid path for file.');
END;
/
descargue la version 10g para windows q oracle.com da gratuitamente y la instale, luego me conecte en sqlplus como sysdba y cree el directorio,
hasta ahi todo ok
cuando ejecute la parte 2) me salio 'ERROR: Invalid path for file', por lo q comprendi me salta la excepcion invalid_path.
Lei en este foro q debia modificar el parametro utl_file_dir en el INIT***.ORA ó en el spfile(para versiones a partir de la 9). Si modifico el spfile cuando arranco nuevamente la base me dice:
SQL> startup
ORA-01078: failure in processing system parameters
ORA-01565: error in identifying file 'C:\oracle\product\10.2.0\db_1/dbs/spfileoracle.ora'
ORA-27046: file size is not a multiple of logical block size
OSD-04012: el tama¿o del archivo no coincide (OS 3617)
por lo q no puedo modificar asi el utl_file_dir.
Como puedo modificar el parametro utl_file_dir?
Es increible q el paquete utl_file dependa de este parametro q encima no me deja modificar, he probado desde sysdba:
SQL> alter system set utl_file_dir=*;
alter system set utl_file_dir=*
*
ERROR en línea 1:
ORA-02095: el parámetro de inicialización especificado no se puede modificar
pero tampoco puedo.
Ayuda por favor!!!
Gracias