Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Oracle »

Cargar ficheros *.txt con PL/SQL

Estas en el tema de Cargar ficheros *.txt con PL/SQL en el foro de Oracle en Foros del Web. Hola a Todos! Estoy usando la herramienta ACL. Necesito crear un script PL/SQL para cargar en las tablas todos los archivos de texto que hay ...
  #1 (permalink)  
Antiguo 11/06/2007, 05:32
 
Fecha de Ingreso: febrero-2006
Mensajes: 21
Antigüedad: 18 años, 10 meses
Puntos: 0
Cargar ficheros *.txt con PL/SQL

Hola a Todos!
Estoy usando la herramienta ACL.
Necesito crear un script PL/SQL para cargar en las tablas todos los archivos de texto que hay en un determinado directorio.
Todos los archivos tienen el mismo formato.

En resumen: Necesito meter los datos de un numero elevado de ficheros, en una sola tabla.

Se os ocurre algo?????????
  #2 (permalink)  
Antiguo 11/06/2007, 11:02
 
Fecha de Ingreso: abril-2007
Mensajes: 160
Antigüedad: 17 años, 8 meses
Puntos: 1
Re: Cargar ficheros *.txt con PL/SQL

Pues yo no sé qué es ACL, pero sí sé lo que usaría: el SQL Loader para cada uno de los ficheros, y si fuesen muchos, me crearía un script para realizarlo.

Es decir, no usaría PL-SQL para nada.

Aunque habría que ver si los datos que están en distintos ficheros, pueden repertirse de uno a otro o no.
  #3 (permalink)  
Antiguo 11/06/2007, 20:21
Avatar de kikolice  
Fecha de Ingreso: marzo-2004
Mensajes: 1.510
Antigüedad: 20 años, 9 meses
Puntos: 7
Re: Cargar ficheros *.txt con PL/SQL

si esos archivos estan en el servidor de la base de datos puedes user UTL_FILE, o sql*loader o tambien declararlos como tablas externas
__________________
Blogzote.com :-) Mi blog
  #4 (permalink)  
Antiguo 12/06/2007, 03:29
 
Fecha de Ingreso: febrero-2006
Mensajes: 21
Antigüedad: 18 años, 10 meses
Puntos: 0
Re: Cargar ficheros *.txt con PL/SQL

He leido algo de SQL loader pero no se muy bien como usarlo...

Si tengo "n" ficheros de texto, con la misma estructura en un directorio "c:/MisFicheros" como puedo llamar a sql loader desde un script para cargar todos los datos en una tabla???

Estoy muuuuuy perdido.

Muchas Gracias
  #5 (permalink)  
Antiguo 12/06/2007, 10:55
 
Fecha de Ingreso: abril-2007
Mensajes: 160
Antigüedad: 17 años, 8 meses
Puntos: 1
Re: Cargar ficheros *.txt con PL/SQL

SQL Loader actúa fichero a fichero, por lo que en caso de que utilizaras este método, tendrías que hacerlo uno a uno (y si no, programarte un script como dije, en lo cual tienes total libertad de elección y creación, y dependerá entre otras cosas de la máquina en la que estés).

Última edición por programadornet; 12/06/2007 a las 11:01
  #6 (permalink)  
Antiguo 13/06/2007, 12:22
(Desactivado)
 
Fecha de Ingreso: junio-2007
Mensajes: 14
Antigüedad: 17 años, 6 meses
Puntos: 0
Re: Cargar ficheros *.txt con PL/SQL

Si tus archivos no estan en el server, usa sql loader, si en cambio estan en el server ( o en un file system que el server pueda ver ), usa external tables, que es mucho mas simple que el sql loader y mucho mas potente.
  #7 (permalink)  
Antiguo 26/09/2007, 09:57
 
Fecha de Ingreso: septiembre-2007
Mensajes: 19
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: Cargar ficheros *.txt con PL/SQL

Si no quieres usar SQL Loader, puedes mediante una aplicación subir el o los archivos al servidor ftp, luego si los archivos tienen una estructura determinada puedes abrir y recorrer línea a línea los archivo e insertarlos a una tabla o procesarlos directamente según la finalidad del proceso.

Es más complejo, pero funciona

Ojo, que antes de abrir un archivo desde un SP, debes cambiarle los atributos desde el mismo procedimiento.

Saludos desde Chile
  #8 (permalink)  
Antiguo 26/09/2007, 22:58
Avatar de Linterns
Colaborador
 
Fecha de Ingreso: diciembre-2001
Mensajes: 2.799
Antigüedad: 23 años
Puntos: 11
Re: Cargar ficheros *.txt con PL/SQL

leete las faqs de BBDD; ahi esta como hacerlo

Si son muchos ficheros puedes hacerlo mediante un bath que lea el nombre de los ficheros y luego correr la sintaxis por cada registro txt que tengas

ej:

Código PHP:
 sqlldr miusuario/mipasword@mibase fichero01.TXT rows=10 errors=30000 
__________________
Bien se puede recibir una puñalada sin adulación,
pero rara vez se recibe una adulación sin puñalada
** ***
  #9 (permalink)  
Antiguo 14/10/2007, 22:26
 
Fecha de Ingreso: noviembre-2003
Mensajes: 59
Antigüedad: 21 años
Puntos: 0
Re: Cargar ficheros *.txt con PL/SQL

Cita:
Iniciado por Linterns Ver Mensaje
leete las faqs de BBDD; ahi esta como hacerlo

Si son muchos ficheros puedes hacerlo mediante un bath que lea el nombre de los ficheros y luego correr la sintaxis por cada registro txt que tengas

[/php]
Como puedo hacer eso de leer varios ficheros??.

tengo que hacer eso, en un directorio pasar miles de archivos a tablas, pero el sql loader usa un archivo de control que solo permite un archivo a la vez.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:48.