Default: The same file name as the data file, but with an extension of .
DISCARD parameter lets you optionally specify a discard file to store records that are neither inserted into a table nor rejected. They are not bad records, they simply did not match any record-selection criteria specified in the control file, such as a
WHEN clause for example.
Syntax and Description
If you specify the
DISCARD parameter, then you must supply either a directory or file name, or both.
directory parameter specifies a directory to which the discard file will be written. The specification can include the name of a device or network node. The value of directory is determined as follows:
DISCARD parameter is not specified at all, but the
DISCARDMAX parameter is, then the default directory is the one in which the SQL*Loader control file resides.
DISCARD parameter is specified with a file name but no directory, then the directory defaults to the current directory.
DISCARD parameter is specified with a directory but no file name, then the specified directory is used and the default is used for the name and the extension.
filename parameter specifies a file name recognized as valid on your platform. You must specify only a name (and extension, if one other than .dsc is desired). Any spaces or punctuation marks in the file name must be enclosed in single quotation marks.
If neither the
DISCARD parameter nor the
DISCARDMAX parameter is specified, then a discard file is not created even if there are discarded records.
DISCARD parameter is not specified, but the
DISCARDMAX parameter is, and there are discarded records, then the discard file is created using the default name and the file is written to the same directory in which the SQL*Loader control file resides.
If multiple data files are being loaded and you are also specifying the
DISCARD parameter, it is recommended that you specify only a directory for the discard file, not a file name. If you specify a file name, and a file with that name already exists, then it is either overwritten or a new version is created, depending on your operating system.
A discard file specified on the command line becomes the discard file associated with the first
INFILE statement (if there is one) in the control file. If the discard file is also specified in the control file, then the command-line value overrides it. If a discard file with that name already exists, then it is either overwritten or a new version is created, depending on your operating system.
"Discarded and Rejected Records" for information about the format of discard files
Assume that you are loading a data file named
employees.dat. The following example supplies only a directory name so the name of the discard file will be
employees.dsc and it will be created in the