Hola,
Cita: ¿Existe alguna función dentro de un paquete en el que pueda hacer el retorno de carro y el salto de linea?
Si entiendo bien, lo que buscas es la funcion CHR, chr(10) y chr(13) es la representacion de retorno de carro y salto de linea.
Cita: ¿existe dentro de este paquete alguna función que me almacene temporalmente un fichero en la base de datos y luego borrarlo?.
Te dejo un procedimiento que utilizo para cargar ficheros a la base de datos dentro de campos LOBs, aunque no veo claramente para que los quieres cargar. Tendras que cambiar el codigo y pasar de utilizar el package UTL_FILE al package DBMS_LOB para leer la informacion.
Código:
SQL> CREATE TABLE files (
2 dir_name VARCHAR2(30),
3 file_name VARCHAR2(30),
4 file_data BLOB)
5 /
Tabla creada.
SQL> CREATE DIRECTORY TEMP AS 'C:\TEMP\'
2 /
Directorio creado.
SQL>
SQL> CREATE OR REPLACE PROCEDURE load (
2 p_dir_name VARCHAR2,
3 p_file_name VARCHAR2
4 )
5 IS
6
7 s_file BFILE;
8 d_file BLOB;
9 len BINARY_INTEGER;
10
11 BEGIN
12
13 s_file := bfilename(p_dir_name, p_file_name);
14
15 INSERT INTO files VALUES (p_dir_name, p_file_name, EMPTY_BLOB());
16
17 SELECT file_data INTO d_file
18 FROM files
19 WHERE dir_name = p_dir_name and file_name = p_file_name;
20
21 dbms_lob.fileopen(s_file, dbms_lob.file_readonly);
22
23 len := dbms_lob.getlength(s_file);
24
25 dbms_lob.loadfromfile(d_file, s_file, len);
26
27 UPDATE files
28 SET file_data = d_file
29 WHERE dir_name = p_dir_name and file_name = p_file_name;
30
31 dbms_lob.fileclose(s_file);
32
33 END;
34 /
Procedimiento creado.
SQL> exec load('TEMP','1.txt');
Procedimiento PL/SQL terminado correctamente.
SQL>
SQL> commit;
Confirmaci¾n terminada.
Saludos