LOAD and UNLOAD
Informix®
Informix provides two SQL instructions to export / import data from / into a database table:
UNLOAD instruction copies rows from a database table into a text
file:UNLOAD TO "filename.unl" SELECT * FROM tab1 WHERE ..The
LOAD instructions insert rows from a text file into a database
table:LOAD FROM "filename.unl" INSERT INTO tab1ORACLE
ORACLE provides tools like SQL*Plus and SQL*Loader to load/unload data from a database.
Solution
LOAD and UNLOAD instruction are implemented in the Genero BDL
runtime system with basic INSERT (for LOAD) or
SELECT (for UNLOAD) SQL commands. The
LOAD and UNLOAD instruction can be
supported with various database servers.
However, LOAD and UNLOAD require the description of the column
types in order to work, that can lead to some differences in the data formatting.
LOAD instruction will automatically execute
a BEGIN WORK and COMMIT WORK when finished, or ROLLBACK
WORK if a row insertion failed while loading. Terminating a transaction will automatically
close cursors not defined WITH HOLD option. To workaround this situation, see more
details in the LOAD reference topic.The LOAD and UNLOAD BDL instructions are supported with ORACLE
with some limitations:
- There is a difference when using ORACLE
DATEcolumns.DATEcolumns created in the ORACLE database are equivalent to InformixDATETIME YEAR TO SECONDcolumns. InLOADandUNLOAD, all ORACLEDATEcolumns are treated as InformixDATETIME YEAR TO SECONDcolumns and thus will be unloaded with the "YYYY-MM-DD hh:mm:ss" format. -
Informix
INTEGERandSMALLINTare mapped to ORACLENUMBER(?)columns. Those values will be unloaded as InformixDECIMAL(10)andDECIMAL(5)values, that is, with a trailing dot-zero ".0". - When using an Informix database, simple dates are unloaded using the DBDATE format (ex:"23/12/1998"). Unloading from an Informix database for loading into an ORACLE database is not supported.