Ver Mensaje Individual
  #1 (permalink)  
Antiguo 12/05/2011, 08:34
jhangjhang
 
Fecha de Ingreso: mayo-2011
Mensajes: 1
Antigüedad: 13 años
Puntos: 0
Pregunta Problema con importacion de datos desde un archivo de text a oracle 9i

Hola compañeros,
verán, tengo un problema al intentar importar unos datos q se encuentran en un archivo de texto (.txt), les presento a continuacion lo que tengo por el momento para la importacion:

Utilizo un archivo llamado: ctl_import_transactions.ctl, con lo siguiente:

Código:
LOAD DATA
INFILE 'C:\Migrador de Datos\Datos Descomprimidos\Datos Exportados\Transactions.txt'
BADFILE 'C:\Migrador de Datos\Datos Descomprimidos\Datos Exportados\Transactions.bad'
INTO TABLE MIGRA_TRANSACTIONS
APPEND
FIELDS TERMINATED BY ';'
TRAILING NULLCOLS
(IDCOMPANIA,DATELOCALTRANS,DATESTAMP,PRIMARYACCTNUM,DATEEXPIRED,ADQ,RESPONSECODE,RESPONSE,AUTHNUMBER,TERMINALID,SWITCHTO,COMPORT,AMOUNTTRANS,RESPONSETIME,POSENTRYMODE,NETWORKIDENTIFIER,CARDACQID,TRANSACTIONTYPE,COMISIONADQ,LOTE,ALTERNATECARDACQID,REVERSED,CONCELEC,CONCPDV,PAYSTATUS,COMPRDEPOSITO,REFNO,RRN,PRODUCTCODES,SECONDCARDACQID,ALTERNATETERMINALID,SETTLEDATE,NUMERO_ADQUIRENTE,HOSTID,FEC_ENT,IND_CAMARA,FECHA_CAMARA,TRANSACCION_NO_PAGADA,CURRENCY,PROCESSINGCODE)
En la ventana de comandos ejecuto el archivo de control con la siguiente línea:

sqlldr '[usuario]/[password]@[BD]' CONTROL='C:\Migrador de Datos\ctl_import_transactions.ctl', DATA='C:\Migrador de Datos\Datos Descomprimidos\Datos Exportados\Transactions.txt' rows=1000

* [usuario], [password] y [BD] en realidad contienen los datos que utilizo, los pongo asi a modo de ejemplo simplemente

Ahora al ejecutar la instrucción, no me lanza errores y me despliega unos mensajes como el siguiente:
Commit point reached - logical record count 24
Commit point reached - logical record count 48
Commit point reached - logical record count 72

mi duda es qué significa ese error exactamente, porque no guarda los datos en la tabla de destino.

Por cierto, olvidé agregar lo q indica el archivo ctl_import_transactions.log:
Record 1: Rejected - Error on table MIGRA_TRANSACTIONS, column IDCOMPANIA.
Field in data file exceeds maximum length
Record 3: Rejected - Error on table MIGRA_TRANSACTIONS, column IDCOMPANIA.
Field in data file exceeds maximum length
Record 4: Rejected - Error on table MIGRA_TRANSACTIONS, column IDCOMPANIA.
Field in data file exceeds maximum length

Asi unas 51 veces más despliega el mismo mensaje. Y al final indica:
ORA-01722: invalid number

Lo que me parece extraño es que en la tabla Oracle, IDCOMPANIA es un campo INTEGER y los datos son todos enteros.


Gracias por su ayuda, saludos.

Última edición por jhangjhang; 12/05/2011 a las 08:48