sqlldr (SQL loader) problem

From: Anonymous <new_open_close_at_yahoo.com>
Date: 9 Nov 2004 09:41:29 -0800
Message-ID: <83fb7fd5.0411090941.6c814823_at_posting.google.com>



[Quoted] The script below loads in the points listed, but doesn't keep the precision. I've tried "float" and "double" keywords but haven't been able to load the fractional part of the data...

BELOW is the file submitted to sqlldr


LOAD DATA INFILE * TRUNCATE
INTO TABLE geometry
FIELDS TERMINATED BY ','
(
  geo_id,
  geometry COLUMN OBJECT
  (

    SDO_GTYPE     CONSTANT                  2003,
    SDO_ELEM_INFO VARRAY COUNT (CONSTANT 3) (x),     SDO_ORDINATES VARRAY COUNT (CONSTANT 4) (y FLOAT EXTERNAL)   )
)

BEGINDATA

1,1,1003,3,179.99999997678395,-89.99999992641497,-180.00000009875197,-89.9999998814124
2,1,1003,3,-180.0000002297159,-90.00000002853564,-180.00000013347216,-90.00000027828952
3,1,1003,3,1.0,2.0,3.0,4.0


Data in Oracle table



SQL> select * from geometry;

    GEO_ID



GEOMETRY(SDO_GTYPE, SDO_SRID, SDO_POINT(X, Y, Z), SDO_ELEM_INFO, SDO_ORDINATES)

         1
SDO_GEOMETRY(2003, NULL, NULL, SDO_ELEM_INFO_ARRAY(1, 1003, 3), SDO_ORDINATE_ARRAY(180, -90, -180, -90))          2
SDO_GEOMETRY(2003, NULL, NULL, SDO_ELEM_INFO_ARRAY(1, 1003, 3), SDO_ORDINATE_ARRAY(-180, -90, -180, -90))          3
SDO_GEOMETRY(2003, NULL, NULL, SDO_ELEM_INFO_ARRAY(1, 1003, 3), SDO_ORDINATE_ARRAY(1, 2, 3, 4)) Received on Tue Nov 09 2004 - 18:41:29 CET

Original text of this message