PDA

View Full Version : [pl sql] errore sql dev :ORA-30653 campo troppo lungo


Giak79
06-05-2010, 12:15
ciao tutti,
sto cercando di caricare con una ext_table dei dati da un file.txt

l'errore è il seguente :

ORA-29913: errore nell'esecuzione del callout ODCIEXTTABLEFETCH
ORA-30653: limite di rifiuto raggiunto
29913. 00000 - "error in executing %s callout"
*Cause: The execution of the specified callout caused an error.
*Action: Examine the error messages take appropriate action.

nel log viene roportato questo errore :

KUP-04021: errore di formattazione campo per il campo NOTE_DESCRITTIVE
KUP-04026: campo troppo lungo per il tipo di dati

il campo in questione è questo :

"NOTE_DESCRITTIVE" VARCHAR2( 300 BYTE),

come mai mi da questo problema ?

grazie per l'aiuto

Giak79
06-05-2010, 15:47
ho risolto il problema :

datatype_spec

The datatype_spec clause indicates the datatype of the field. If datatype_spec is omitted, the access driver assumes the datatype is CHAR(255). For a full description of the syntax, see datatype_spec Clause.

datatype_spec Clause
The datatype_spec clause is used to describe the datatype of a field in the datafile if the datatype is different than the default. The datatype of the field can be different than the datatype of a corresponding column in the external table. The access driver handles the necessary conversions.

CHAR
The CHAR clause is used to indicate that a field is a character datatype. The length (len) for CHAR fields specifies the largest number of bytes or characters in the field. The len is in bytes or characters, depending on the setting of the STRING SIZES ARE IN clause.

If no length is specified for a field of datatype CHAR, then the size of the field is assumed to be 1, unless the field is delimited:

For a delimited CHAR field, if a length is specified, that length is used as a maximum.

For a delimited CHAR field for which no length is specified, the default is 255 bytes.

For a delimited CHAR field that is greater than 255 bytes, you must specify a maximum length. Otherwise you will receive an error stating that the field in the datafile exceeds maximum length.