I have existing sql loader routines that used to work on an older version of Open VMS (6) and Oracle (7). Now that we have upgraded to Open VMS version 7.3 and Oracle 8.0.5 they no longer work.
THe problem specifically seems to be with converting SINGLE datatype to Number datatype using FLOAT as the conversion datatype in the SqlLoader control file.
I get a 'High performance arithmetic trap' symbolic stack dump....

The control file is very simple and looks like this:

options (silent=discards)
load infile 'flat_file' replace
into table tkc
tkc_tkhno smallint nullif tkc_tkhno=X'00',
tkc_type smallint nullif tkc_type=X'00',
tkc_part smallint nullif tkc_part=X'00',
tkc_qty float nullif tkc_qty=X'00',
tkc_sel byteint nullif tkc_sel=X'00',
tkc_num byteint nullif tkc_num=X'00'

The original RMS file format is:
map (tkc) word tkc_tkhno, &
tkc_type, &
tkc_part, &
single tkc_qty, ! New standard. &
byte tkc_sel, &

Oracle used to be clever enough to convert from SINGLE to NUMBER format when specifying FLOAT as the datatype in the control file.

I know that I can go down the path of specifying the exact positions of the different fields but I have about 20 to do (most much bigger) so I would prefer to get it working with my existing routines if I could!!

Anyone got any suggestions?
Is it because now that VMS and ORACLE are 64 Bit that these datatypes are no longer compatible?

Any help appreciated.. thankyou!!