![]() |
Cómo exportar una consulta de Oracle 10i a un archivo .txt
Pretendo realizar una consulta en Oracle por ejemplo:
De la siguiente consulta: Select * From Juzgados Where Anio like "2005"; La salida de esta consulta quisiera obtener la en un archivo de texto plano sin que sea un reporte. De ante mano gracias. |
Puedes conectar a Oracle vís ADO (por ejemplo); Con un ADOQuery debría bastar. A partir de ahí la exportación la puedes realizar "a mano" (1) o utilizando algun componente externo (2).
(1) Debes hacer un recorrido doble (dos FOR anidados) por el dataset; El primer recorrido que te divida los registros (por ejemplo con un caracter de "salto de línea") y el segundo (el más interno) que te separa las columnas (Fields) utilizando una Coma o un TAB. Lo vas guardando en un TStrings por ejemplo y al final lo guardas a fichero con un SaveToFile. (2) Si quieres usar algun componente externo, yo personalmente he utilizado alguna vez los de Max y son sencillos (gratuítos y con fuentes). http://www.maxcomponents.net/components.html#EXPORT |
Hola Saul990,
Si estás ejecutando la consulta desde el isqlplus de Oracle, existe el comando Spool o algo parecido que redirecciona la salida de la pantalla a un fichero de texto. Un saludo. |
Hola:
Como ya te han dicho, spool, direcciona la salida, por ejemplo:
Espero te sirva |
otra posible solucion usando las herramientas de ORACLE en especial Pl/SQL
es usando UTL_FILE, adjunto un ejemplo de esta herra ineta, lo que hace es gegerar un archivo de texto plano.... en un directorio del servidor... PROCEDURE PRFILE is f utl_file.file_type; begin f := utl_file.fopen('dir_LOCAL', 'something.txt', 'w'); utl_file.put_line(f, 'line one: si funcionaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'); utl_file.put_line(f, 'line two: more text'); utl_file.fclose(f); end; ahora lo que tendrias que hacer es generarte un cursor de tu consulta sql, darle formato, y ejecutar Put_line.... fopen('dir_LOCAL', 'something.txt', 'w'); <--- investiga la opcion CREATE DIRECTORY de oracle, para dar de alta un carpeta del servidor donde puedes leer y escribir archivos |
La franja horaria es GMT +2. Ahora son las 21:12:31. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi