need workaround to fast-load LONG RAW column

From: Paul Hays <paulh_at_Cognos.COM>
Date: 1997/11/14
Message-ID: <64ifq1$6ii_at_mail.cognos.com>#1/1


I'm new to Oracle, so please
forgive ignorance.

We need to load records from
a binary data file into an
Oracle table.
Performance requirements
indicate Oracle SQL*Loader's
"direct path"

option. The last field in
each input record has
variable-length binary
data (the preceding field has
the length). The Oracle
datatype for the
corresponding database column
is LONG RAW.

Unfortunately, SQL*Loader
does not appear to support a
syntax for the
variable-length binary input
field. The amount of data
involved precludes
changing the field's
representation to hexadecimal
in the input file. Is
there a workaround for this
situation?

We could specify the field as
having SQL*Loader type
VARCHAR, by placing a
2-byte length specifier at
the start of the
variable-length binary field.
I understand that SQL*Loader
will by default interpret the
input values as
hexadecimal characters,
converting pairs of input
bytes into single bytes
in the database. Is there a
way to suppress that
conversion, perhaps by
including some SQL function
in the field specification?

If we can't compel SQL*Loader
to handle this, we can write
an OCI
application to load the data.
We have C code to load a bind
array and
execute an INSERT for the
data, which is essentially
SQL*Loader's
"conventional path" behavior.

Does OCI support "direct
path" access? (If
so, please direct me to the
appropriate documentation.)

Any hints appreciated!

Paul Hays -- Cognos,
Incorporated

Paul.Hays_at_Cognos.com Received on Fri Nov 14 1997 - 00:00:00 CET

Original text of this message