Home » RDBMS Server » Server Utilities » SQLLDR loading Mainframe EBCDIC packed decimal field problem
SQLLDR loading Mainframe EBCDIC packed decimal field problem [message #117835] Fri, 29 April 2005 20:26
DenisS
Messages: 2
Registered: April 2005
Location: Vancouver, Canada
Junior Member
Hi,
We have recently discovered that SQLLDR can load EBCDIC data - that means we don't have to write a conversion program Smile
However there is a small problem when I am loading EBCDIC data to an oracle table using SQLLDR. The whole thing loads just fine except one packed binary field.
When this field contains 2 digits - everything is fine, however, when this field contains 3 digits - I get the:
"Invalid packed decimal nibble error" in my log file.
And this record does not get loaded.

Here are some pieces of code I use for loading this field from the CTL file:
Load DATA CHARACTERSET WE8EBCDIC37
INFILE "ebcdic_table.txt" "FIX 150"
(...
SWU_NUM POSITION(5:6) DECIMAL (3),
..)


The field on the mainframe is:
SWU-NO PIC S9(4) USAGE COMP.
It's 2 bytes of signed packed decimal.
It has 3 digits and the sign.

I have tried to play around with different digits inside DECIMAL() and some other tricks. But no luck.

Any ideas would be greatly appreciated!

Thanks,
Denis
Previous Topic: ORA 12801 import fails
Next Topic: ORA-00600: internal error code, arguments:[17182]
Goto Forum:
  


Current Time: Thu Jul 04 06:19:58 CDT 2024