SQL*Loader Features

SQL*Loader loads data from external files into tables of an Oracle database. It has a powerful data parsing engine that puts little limitation on the format of the data in the data file. You can use SQL*Loader to do the following:

  • Load data across a network if your data files are on a different system than the database.

  • Load data from multiple data files during the same load session.

  • Load data into multiple tables during the same load session.

  • Specify the character set of the data.

  • Selectively load data (you can load records based on the records' values).

  • Manipulate the data before loading it, using SQL functions.

  • Generate unique sequential key values in specified columns.

  • Use the operating system's file system to access the data files.

  • Load data from disk, tape, or named pipe.

  • Generate sophisticated error reports, which greatly aid troubleshooting.

  • Load arbitrarily complex object-relational data.

  • Use secondary data files for loading LOBs and collections.

  • Use conventional, direct path, or external table loads. See "Conventional Path Loads_ Direct Path Loads_ and External Table Loads".

You can use SQL*Loader in two ways: with or without a control file. A control file controls the behavior of SQL*Loader and one or more data files used in the load. Using a control file gives you more control over the load operation, which might be desirable for more complicated load situations. But for simple loads, you can use SQL*Loader without specifying a control file; this is referred to as SQL*Loader express mode. See SQL*Loader Express .

The output of SQL*Loader is an Oracle database (where the data is loaded), a log file, a bad file if there are rejected records, and potentially, a discard file.

Figure 7-1 shows an example of the flow of a typical SQL*Loader session that uses a control file.

Figure 7-1 SQL*Loader Overview

Description of Figure 7-1 follows
Description of "Figure 7-1 SQL*Loader Overview"