A LOB is a large object type. SQL*Loader supports the following types of LOBs:
NCLOB
: an internal LOB containing characters from a national character set
BFILE
: a BLOB
stored outside of the database tablespaces in a server-side operating system file
LOBs can be column data types, and except for NCLOB
, they can be an object's attribute data types. LOBs can have actual values, they can be null, or they can be empty. SQL*Loader creates an empty LOB when there is a 0-length field to store in the LOB. (Note that this is different than other data types where SQL*Loader sets the column to NULL for any 0-length string.) This means that the only way to load NULL values into a LOB column is to use the NULLIF clause.
XML
columns are columns declared to be of type SYS
.XMLTYPE
. SQL*Loader treats XML
columns as if they were CLOB
s. All of the methods described in the following sections for loading LOB data from the primary data file or from LOBFILEs are applicable to loading XML
columns.
You cannot specify a SQL string for LOB fields. This is true even if you specify LOBFILE_spec
.
Because LOBs can be quite large, SQL*Loader can load LOB data from either a primary data file (in line with the rest of the data) or from LOBFILEs, as described in the following sections:
Oracle Database SQL Language Reference for more information about large object (LOB) data types