Oracle - Importar texto separado por ; desde forms

 
Vista:

Importar texto separado por ; desde forms

Publicado por IDOIA (43 intervenciones) el 27/04/2004 11:00:27
Hola a todos, necesito saber si es posible importar un fichero texto a forms, con los campos separados mediante “ ; ” de forma q los campos no estén ocupando longitudes fijas sino, lo q ocupen realmente, y sea el punto y coma el q delimite cada uno de los campos. Hasta ahora he utilizado siempre el Text_IO , pero en este caso los campos no vienen con longitudes fijas (tal y como lo exige el Text_IO), así q necesito poder importar datos de la forma q os he indicado. Tampoco puedo utilizar el SQL_LOADER, porq la importacion la tiene q realizar el propio usuario desde un form, no sé por donde tirar. En principio los datos los tengo almacenados en una hoja Excel y los exporto a Texto, como os he indicado al principio del mensaje, (separados los campos por ;)
Si podeís ayudarme os agradecería mucho vuestra colaboración, Un Saludo, y muchas gracias .Idoia
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Importar texto separado por ; desde forms

Publicado por Obarrientos (4 intervenciones) el 27/04/2004 20:48:30
Hola,

apesar de lo que dices puedes usar tanto Text_io como sql loader, en el primero debes obtener cada una de las linea completas del archivo y descomponer la linea en columnas cada vez que encuentres un ;
Para esto usas el instr y substr.

En sqlloader usa un archivo de control que especifica el formato del archivo de carga, este archivo de control se puede crear dinamicamente desde forms mediante el text_io y la funcion put_line luego desde el mismo forms mandas a ejecutar el comando host('sqlldr usuario/password@bd' control=archivo_control.txt')

archivo_control.txt

LOAD DATA
INFILE 'archivo.txt'
INTO TABLE tabla1
FIELDS TERMINATED BY ';'
( columna1,columna2)

archivo.txt es el que tiene la informacion separada por ;

yo recomiendo sql loader si la tabla es muy grande o tienes que cargar mucha informacion es mas rapido
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar