Re: sqlldr (SQL loader) problem
Date: Tue, 09 Nov 2004 22:54:13 +0100
Message-ID: <23f2p05eafn1mjlb43p8uqanm6utou2039_at_4ax.com>
On 9 Nov 2004 09:41:29 -0800, new_open_close_at_yahoo.com (Anonymous) wrote:
>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))
You might be using an NLS_TERRITORY setting where comma and period
have swapped.
-- Sybrand Bakker, Senior Oracle DBAReceived on Tue Nov 09 2004 - 22:54:13 CET