import
utility applies the following general rules when importing a PC/IXF
file in either an SBCS or a DBCS environment:
- The import utility accepts PC/IXF format files only (IXFHID =
'IXF'). IXF files of other formats cannot be imported.
- The import utility rejects a PC/IXF file with more than 1024 columns.
- When exporting to the IXF format, if identifiers exceed the maximum
size supported by the IXF format, the export operation succeeds, but
the resulting data file cannot be used by a subsequent import operation
using the CREATE mode. SQL27984W is
returned.
Note: The CREATE and REPLACE_CREATE options
of the IMPORT command are deprecated and might be removed in a future
release.
- The value of IXFHSBCP in the PC/IXF H record must equal the SBCS
CPGID, or there must be a conversion table between the IXFHSBCP/IXFHDBCP
and the SBCS/DBCS CPGID of the target database. The value of IXFHDBCP
must equal either '00000', or the DBCS CPGID of the target database.
If either of these conditions is not satisfied, the import utility
rejects the PC/IXF file, unless the FORCEIN option
is specified.
- Invalid data types - new tables
Import of a PC/IXF
file into a new table is specified by the CREATE or
the REPLACE_CREATE keywords in the IMPORT command.
If a PC/IXF column of an invalid data type is selected for import
into a new table, the import utility terminates. The entire PC/IXF
file is rejected, no table is created, and no data is imported.
- Invalid data types - existing tables
Import of a PC/IXF file
into an
existing table is specified by the
INSERT,
the
INSERT_UPDATE, the
REPLACE or
the
REPLACE_CREATE keywords in the
IMPORT command.
If a PC/IXF column of an invalid data type is selected for import
into an existing table, one of two actions is possible:
- If the target table column is nullable, all values for the invalid
PC/IXF column are ignored, and the table column values are set to
NULL
- If the target table column is not nullable, the import utility
terminates. The entire PC/IXF file is rejected, and no data is imported.
The existing table remains unaltered.
- When importing into a new table, nullable PC/IXF columns generate
nullable database columns, and not nullable PC/IXF columns generate
not nullable database columns.
- A not nullable PC/IXF column can be imported into a nullable database
column.
- A nullable PC/IXF column can be imported into a not nullable database
column. If a NULL value is encountered in the PC/IXF column, the import
utility rejects the values of all columns in the PC/IXF row that contains
the NULL value (the entire row is rejected), and processing continues
with the next PC/IXF row. That is, no data is imported from a PC/IXF
row that contains a NULL value if a target table column (for the NULL)
is not nullable.
- Incompatible Columns - New Table
If, during import
to a new database table, a PC/IXF column is selected that is
incompatible with the target database column, the import utility terminates.
The entire PC/IXF file is rejected, no table is created, and no data
is imported.
Note: IMPORT's FORCEIN option
extends the scope of compatible columns.
- Incompatible columns - existing table
If, during import to
an
existing database table, a PC/IXF column is selected that
is incompatible with the target database column, one of two actions
is possible:
- If the target table column is nullable, all values for the PC/IXF
column are ignored, and the table column values are set to NULL
- If the target table column is not nullable, the import utility
terminates. The entire PC/IXF file is rejected, and no data is imported.
The existing table remains unaltered.
Note: IMPORT's FORCEIN option
extends the scope of compatible columns.
- Invalid values
If, during import, a PC/IXF column
value is encountered that is not valid for the target database column,
the import utility rejects the values of all columns in the PC/IXF
row that contains the invalid value (the entire row is rejected),
and processing continues with the next PC/IXF row.