SQL*Loader - Incorrect Behaviour In Direct Path When Loading BINARY_DOUBLE Or BINARY_FLOAT (Doc ID 1315200.1)

Last updated on NOVEMBER 04, 2011

Applies to:

Oracle Server - Enterprise Edition - Version: 10.2.0.1 to 11.1.0.7 - Release: 10.2 to 11.1
Information in this document applies to any platform.

Symptoms

You loaded data using SQL*Loader (started on client with different byte order than the server, little/big endian) in direct path mode into a column with datatype BINARY_DOUBLE. The process does not raise any error but the values are not correct.

The next test demonstrates this:

-- on server
create table tab001 (col001 number, col002 binary_double, col003 binary_float)

- on client
load data
infile *
truncate
into table tab001
fields terminated by ';'
trailing nullcols
(
   col001,
   col002,
   col003
)
begindata
0;0;0
1;1;1
2;2;2

-- select data on server
select * from tab001;

COL001     COL002     COL003
---------- ---------- ----------
         0  -1.4E+306  -3.4E+038
         1 1.232E+235 1.754E-038
         2 -8.78E+304 -2.55E+038

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms