SQL * Loader is a data migration tool provided by the Oracle database system. It provides a command line method that allows you to load a large amount of data into the Oracle database in batches. Although both the Oracle database and the SQL Server database provide graphical interface import tools, the graphical interface has a major disadvantage, that is, it cannot be directly referenced by foreground programs. The command line import module can be directly called by the foreground application. This is also one of the reasons why SQL * Loader becomes one of the most common tools in the Oracle database system.
SQL * Loader has the following advantages:
First, it can be directly called by the foreground application. For example, the open-source COMPIERE enterprise management application system uses the Oracle database system. In the COMPIERE application system, data import is a powerful function. It can not only import data according to the existing template, but also customize the import format. This is very useful when the system imports basic data. However, the development of this function is really simple, because it basically calls the SQL * Loader module in the background database system directly. The command line mode import module can be directly called by foreground applications, which is its biggest advantage.
Second, you can import a large amount of data from an existing file. Using the SQL * Loader tool, you can import a large number of records from an existing file, such as a comma delimiter file or a fixed-width file, to the Oracle database system according to certain rules. The import efficiency is much higher than the graphic interface.
Third, multiple data files can be merged into one file. We all know that in Oracle databases, the data required by a database application can be stored in multiple data files to achieve high database performance and high database security. However, sometimes we may need to combine these data files into one. At this time, we can use the SQL * Loader tool to merge them.
Fourth, repair and detach bad records. Sometimes, the data to be imported may conflict with the data table in the Oracle database system, resulting in data import failure. If the data field to be imported is too long and exceeds the maximum length limit of the data table, data import may fail. Using the SQL * Loader import tool, you can separate the records that do not comply with the rules and store them in an independent file. Data that meets the rules can be imported normally. In this way, the data import accuracy can be improved.
Next, let's take a look at how to use this Oracle database system as a good helper for us.
Generally, the SQL * Loader module requires at least two files for use.
First, data files. A data file, as its name implies, is a collection of data to be imported. For the Oracle system, it supports data files in multiple formats, such as text files such as comma separator, TAB key separator or semicolon separator, and fixed-width text files. However, in practice, most text files are separated by commas.
The second is the control file. The control file is used to establish a one-to-one correspondence between data files and Oralce data table fields. Simply put, putting a certain content in the data file on the field in the Oracle data table is the main role of the control file.
There is also a file, which is also very useful, called a bad file. If the bad file is specified in the command line tool, some records that failed to be imported will be saved in the bad file during the import process. Therefore, for database administrators, this file is sometimes more practical than data import log files. Therefore, the author suggests that if an enterprise has a high requirement on data import accuracy, it is best to specify this bad file when using SQL * Loader to import data. This is of great practical value for us to check the accuracy of the imported data.