BL_BADFILE= Data Set Option

Identifies a file that contains records that were rejected during bulk loading.

Valid in: DATA and PROC steps (when accessing DBMS data using SAS/ACCESS software)
Categories: Bulk Loading
Data Set Control
Default: creates a data file in the temporary file directory that is specified by the UTILLOC= system option or in another directory that is based on your default file specifications
Requirement: To specify this option, you must first specify BULKLOAD=YES.
Data source: Oracle
See: BULKLOAD= data set option

Table of Contents

Syntax

Syntax Description

path-and-file-name

an SQL*Loader file to which rejected rows of data are written. On most platforms, the default file name takes the form BL_<table>_<unique-ID>.bad:

table

specifies the table name.

unique-ID

specifies a number that is used to prevent collisions in the event of two or more simultaneous bulk loadings of a particular table. The SAS/ACCESS engine generates the number.

Details

If you do not specify this option and a BAD file does not exist, a file is created in the temporary file directory that is specified by the UTILLOC= system option (or in another directory that is based on your default file specifications). If you do not specify this option and a BAD file already exists, the Oracle bulk loader reuses the file, replacing the contents with rejected rows from the new load.

Either Oracle or the SQL*Loader can reject records. For example, the SQL*Loader can reject a record that contains invalid input, and Oracle can reject a record because it does not contain a unique key. If no records are rejected, the BAD file is not created.

On most operating systems, the BAD file is created in the same format as the DATA file, so the rejected records can be loaded after corrections have been made.

Operating Environment Information: On z/OS operating systems, the BAD file is created with default DCB attributes. For details about overriding this, see the information about SQL*Loader file attributes in the SQL*Loader chapter in your Oracle user's guide for z/OS.
Last updated: February 3, 2026