Oracle8 Error Messages Release 8.0.4 A58312-01 |
|
Cause: A non-hexadecimal character was found in a hexadecimal string.
Action: Change it to the intended hexadecimal character.
Cause: The control file contains a combination of non-alphanumeric characters that SQL*Loader does not recognize. For example, the combination != is recognized as "not equal", but the combination =! is not valid.
Action: Remove the unrecognized characters from the control file.
Cause: The file contains multiple end-of-file marks.
Action: Remove the excess end-of-file characters.
Cause: The control file contains a single word or combination of characters (a token) that is longer than the maximum permissible value. The maximum possible value is shown. This error could result from missing spaces, so that multiple tokens are joined.
Action: Check that the proper control file is being executed. Separate tokens, if joined, or shorten the token.
Cause: The control file specifies two different lengths for the named column. There are three ways to specify the length of a field:
A conflict could occur between any two of these specifications (or among all three, but only two are shown).
A common cause of this error is the specification of some numeric datatype, such as INTEGER, when the numeric external form is intended (INTEGER EXTERNAL). The external form consists of character data, so it is considerably longer than the numeric form, which consists of binary data.
Action: No action is necessarily required, because SQL*Loader uses only one of the lengths. Check the log file under the heading "Len" in the table-description section to see which length was used. Adjusting the control file to produce uniform length specifications will remove the warning.
Cause: A SQL string was found that was not quoted or in single quotes.
Action: Use double quotes for the SQL string, rather than single quotes.
Cause: num identifies the line in the control file at which the error occurred. This message is followed by another of the form
Expecting str1, found str2where str1 is a description of what SQL*Loader expected in the control file, and str2 is what was found. Then SQL*Loader displays the offending line from the control file, indicating the location of the error in the line by a carat (^) or an asterisk (*). An example follows:
SQL*Loa er-350: Syntax error at line 28
Expecting column name, found keyword CHAR
col3 ENCLOSED BY '"', CHAR ENCLOSED "'",
Action: Compare the DDL syntax against the syntax diagrams in Oracle8 Server Utilities and make any necessary corrections.
00400-00499: Column MessagesCause: The named field contains a (start:end) clause in which end is less than start.
Action: Modify the clause so that end is greater than or equal to start.
Cause: The specified datatype does not have an implied length (for example, a numeric external or RAW datatype), it is not specified with delimiters, no length was specified, and a length cannot be determined from a POSITION clause.
Action: If a POSITION clause is specified, adding an end location to it produces a length specification. This clause then has the form
POSITION(start:end)A length can also specified after the datatype, as in
INTEGER EXTERNAL (6)Finally, the field could be specified with delimiters, or the datatype changed to one that has an implied length.
Cause: The named column is not present in the given table.
Action: Correct the column name or table name.
Cause: The named column is specified more than once in a single INTO TABLE statement.
Action: Remove the extraneous column specification.
Cause: The named column was specified with an optional enclosure delimiter, but no termination delimiter. Enclosure delimiters can only be optional when termination delimiters are present.
Action: Specify a termination delimiter or make the enclosure delimiters non-optional.
Cause: When only generated data is loaded, a number to load must be given so SQL*Loader knows when to stop.
Action: Specify a number to load.
Cause: When all data is generated, no file is read, and there are no records to skip.
Action: Remove the number to skip.
Cause: An internal error has occurred.
Action: Contact customer support.
Cause: The SKIP parameter was specified on the command line or in the OPTIONS statement, but the load was specified as continued with CONTINUE_LOAD.
When a multiple-table direct load is interrupted, it is possible that a different number of records were loaded into each table. As a result, the number of records to skip must be specified for each table when continuing the load. In this case, the load is specified as continued with the CONTINUE_LOAD statement, and the number of records to skip is given in each INTO TABLE statement.
See also messages 410 and 411 for more information.
Action: Check the log file to determine the appropriate number of records to skip for each table and specify this number in the INTO TABLE statement for each table in a continued load or with the command-line SKIP parameter in a standard load.
Cause: A SKIP clause was found in the INTO TABLE statement of a standard (non-continued) load.
In a standard load, specified with LOAD DATA, it is not possible to skip a different number of records for each table. The number of records to skip must be specified for the entire load by using the SKIP parameter on the command line or in the OPTIONS clause.
If table-level skip is required, because a different number of records were loaded into each table (only possible for a multiple-table direct load), then specify a continued load with the CONTINUE_LOAD statement.
See also messages 409 and 411 for more information.
Action: If the load was not a multiple-table, direct path load, then move the SKIP clause from the INTO TABLE statements to the command line or to the OPTIONS clause. Otherwise, specify the load as continued with CONTINUE_LOAD.
Cause: The load is specified with CONTINUE_LOAD, but DIRECT=FALSE. CONTINUE_LOAD is only possible for a direct path load and is only necessary for a multiple-table, direct path load when a different number of records have been loaded into each table.
Action: If CONTINUE_LOAD is necessary, specify a direct load and put the number of records to skip in each INTO TABLE statement. Otherwise, use the command line or OPTIONS clause to specify the number of records to skip and use LOAD DATA instead of CONTINUE_LOAD.
Cause: More columns were specified for the table than the maximum number allowed by the database.
Action: Remove the extraneous columns.
Cause: Because the direct path bypasses SQL processing, the SQL string cannot be used.
Action: Remove the SQL string or use the conventional path.
Cause: The comparison text is too long. It can only be one character.
Action: Reduce the comparison text to one character.
Cause: The comparison text is a whitespace character (blank or tab).
Action: Change the comparison text to a non-whitespace character.
Cause: An attempt was made to retrieve a non-numeric value for a sequenced column.
Action: Verify that the data for the sequenced column is numeric. Then retry the operation.
Cause: The given column with the given form of use does not have the same character set ID as a previous column with the same form of use.
Action: This should not happen. Contact ORACLE support and supply the following information: DDL for the table being loaded, and the SQL*Loader control file.
00500-00599: File I/O and Operating System MessagesCause: SQL*Loader could not open the named file.
Action: Check the operating system messages below this one in the log file.
Cause: SQL*Loader could not read the named file.
Action: Check the operating system messages below this one in the log file.
Cause: SQL*Loader could not append the default extension to create the filename. The given name could be too long or contain illegal characters.
Action: Check the specified filename.
Cause: SQL*Loader could not open the file or could not read from it.
Action: Check that the file is where it is expected and that read access has been granted.
Cause: The datafile has a physical record that is too long.
Action: Use CONCATENATE or CONTINUEIF. Break up the physical records.
Cause: SQL*Loader could not initialize the read functions.
Action: Check the errors below this message in the log file for more information.
Cause: An internal error has occurred.
Action: Contact customer support.
Cause: SQL*Loader could not close the named file.
Action: Check the errors below this message in the log file for more information.
Cause: SQL*Loader could not get the elapsed time from the system.
Action: No action required.
Cause: SQL*Loader could not get the CPU time from the system.
Action: No action required.
Cause: The named file was found to be empty.
Action: Check that the intended file was referenced and that it is not empty.
Cause: SQL*Loader could not break down the filename into its component parts.
Action: Check the filename for illegal characters.
Cause: SQL*Loader could not put the filename back together again from its components.
Action: Check the filename for illegal characters.
Cause: LFI failed to make a name object for the file.
Action: Contact Oracle Worldwide Support.
Cause: LFI failed to create or initialize a file object for the file.
Action: Contact Oracle Worldwide Support.
Cause: LFI failed to open the file.
Action: Check for any possible operating system errors and/or potential memory problems.
Cause: Could not write to specified file.
Action: Check the following:
If all of these conditions are satisfied, then retry the operation.
Cause: The space needed to contain a single row is longer than the specified bind size.
Action: One solution is to increase the amount of space allowed for the bind array, using the BINDSIZE keyword on the command line or in the OPTIONS statement in the control file.
If the row contains VARCHAR or VARGRAPHIC data, specifying a maximum length for these fields can also reduce the amount of memory needed to buffer a row.
Cause: A non-empty table is being loaded with the INSERT option.
Action: Use the REPLACE keyword to empty the old table and store the new data in its place. Use the APPEND keyword to leave the table's contents intact and add the new data to it.
Cause: The named column cannot undergo the specified character set conversion and still be placed in a contiguous piece of memory on the system.
Action: Specify a shorter data column or eliminate the conversion.
Cause: The named column cannot be put in a contiguous piece of memory on the system.
Action: Specify a shorter data column.
Cause: An error occurred while trying to commit changes to the database.
Action: Look at the message listed below this one in the log file for more information.
Cause: An error occurred that is independent of the data. For example, an out-of-space condition. Because all further rows will be rejected, the load is discontinued. (If the error were data dependent, then other rows might succeed.)
Action: See the errors below this one in the log file for more information.
Cause: The synonym specified in the INTO TABLE clause in the SQL*Loader control file specifies a remote object via a database link. Only a synonym for an existing local table can be specified in the INTO TABLE clause.
Action: Ensure that a local table name or a synonym for a local table is fully specified in the INTO TABLE clause. The table must already exist.
Cause: An attempt was made to use the INSERT option on a non-empty partition.
Action: Empty the partition, or use the REPLACE or TRUNCATE option.
00620-00649: Formatting MessagesThese are errors in data described by free-format (TERMINATED, ENCLOSED) statements in the control file. Format errors occur when the data does not meet format specifications and might cause the loading of incorrect data into the database. A format error causes the record to be written to the bad file because an attempt to insert data failed.
Cause: A mandatory initial enclosure delimiter was not present. Either it is missing on the current field or the previous field is missing an identical closing delimiter.
Action: Supply the missing delimiters.
Cause: A field exceeded its maximum allowable length. The maximum length is either the length specified in the control file, or, for delimitable fields without a length specified, the maximum length of the corresponding database column (for CHAR, VARCHAR columns).
Action: Check for missing delimiters and/or shorten the field.
Cause: The logical record ended before all specified fields were found.
Action: If the missing fields should be loaded as null, use the TRAILING NULLCOLS clause. Otherwise, correct the data.
Cause: The logical end of record occurred before a second enclosure delimiter was found.
Action: Supply the missing delimiter.
Cause: No termination delimiter was found after the enclosed field ended.
Action: Supply the missing termination delimiter.
Cause: Incomplete multi-byte character strings were found in the control file.
Action: Edit the control file to check that all multi-byte character data is valid.
Cause: A conversion from the datafile character set to the client character set required more space than that allocated for the conversion buffer. The size of the conversion buffer is limited by the maximum size of a VARCHAR2 column.
Action: The input record is rejected. The data will not fit into the column.
Cause: A conversion from the datafile character set to the client character failed due to the conversion graph not being available.
Action: Contact Oracle support. Check NLSRTL installation.
Cause: A character set conversion error occurred.
Action: Contact Oracle support. Check NLSRTL installation. Provide a reproducible test case.
Cause: The end of the logical record was encountered before the end of a variable length field. The length of each variable-length field is embedded in the field, so SQL*Loader knows that more data should have been present.
Action: Check the data for inadvertent truncation and verify the control file specifications against the log file - the field may be starting in the wrong place.
Cause: Each byte (character) in a zoned decimal field contains two 4-bit nibbles. Each nibble must have a valid value.
Action: Check the control file's specifications against the log file to ensure that the field location was specified correctly. Check the contents of the field.
Cause: A field specified as POSITION(*+n:y) had its relative start occur after the absolute position y.
Action: Check that a delimiter is not missing and that the values of n and y are correct.
00700-00799: Fatal ErrorsCause: SQL*Loader could not allocate the memory it needs.
Action: Check the operating system and process memory. Increase memory available to SQL*Loader if possible. Otherwise, wait until more memory becomes available.
Cause: An internal error has occurred.
Action: Make a note of the message and contact customer support.
Cause: An internal error has occurred.
Action: Make a note of the message and the number, then contact customer support.
Cause: An internal error has occurred.
Action: Make a note of the message and the number, then contact customer support.
Cause: An internal error has occurred.
Action: Contact customer support.
Cause: An internal error has occurred.
Action: Contact customer support.
Cause: An internal error has occurred.
Action: Contact customer support.
00900-00949: Direct Path Load Preparation MessagesCause: An attempt was made to log on to Oracle in direct path load mode.
Action: Ensure that the instance is up and running. Check the Oracle messages below this one in the log file for more information.
Cause: An internal error has occurred.
Action: Check the Oracle messages below this one in the log file and contact customer support.
Cause: The direct path load mode is being used with an incompatible database.
Action: Upgrade the database to the specified version or else use the conventional path load.
Cause: The direct path mode is being used after SQL*Loader has been linked with a Version 5 database.
Action: Use the conventional path.
Cause: This is a header message.
Action: Check the message below this one in the log file for more information.
Cause: An internal error has occurred.
Action: Check the message below this one in the log file for more information.
Cause: SQL*Loader could not get a DML exclusive lock on the table it needed.
Action: Check the message below this one in the log file for more information. Find the object number of the table in the catalog view USER_OBJECTS. Use the SQL*DBA MONITOR LOCK command to list all processes with outstanding locks. Identify the process that has the lock on the table. Then use the MONITOR PROCESS command to find out who is connected as the Oracle process holding the lock and get them to relinquish it, or simply wait and retry.
Cause: Database views required for the direct path mode are not present.
Action: The Oracle8 Server Administrator's Guide details how to run the required scripts as user SYS for loading the required views.
Cause: This is a header message.
Action: Check the message below this one in the log file for more information.
Cause: This is a header message.
Action: Check the message below this one in the log file for more information.
Cause: This is a header message.
Action: Check the message below this one in the log file for more information.
Cause: The direct path load mode could not lock the named table.
Action: Check the message below this one in the log file for more information. Check that the necessary privileges have been granted.
Cause: This is a header message.
Action: Check the message below this one in the log file for more information.
Cause: To do a direct path load when the front end and back end of the database are on separate hardware systems, the systems must be identical, using the same machine, operating system, and character set. This error occurs when SQL*Loader detects a difference between the systems that will prevent a direct load from operating properly.
Action: Use a conventional path load for this configuration.
Cause: The catalog is not loaded.
Action: Logon as user SYS and load the Oracle catalog and the views in the script ULVIEW.SQL.
Cause: An internal error has occurred.
Action: Check the message below this one in the log file for more information.
Cause: An internal error has occurred.
Action: Check the message below this one in the log file for more information. The table or column referenced may not be accessible.
Cause: An OCI error has occurred.
Action: Check the message below this one in the log file for more information. The table or column referenced may not be accessible.
Cause: SQL*Loader could not find the named table. The specified table may not exist. On some systems, this message will also appear if the necessary privileges have not been granted.
Action: Check that the table exists, its name is spelled properly, and that the necessary privileges on it have been granted.
Cause: The table's insert statement caused a parse error.
Action: Check all SQL strings that were used.
Cause: The named column's INSERT statement caused a parse error.
Action: Check the message below this one in the log file for more information. Check the SQL string used for this column.
Cause: An OCI error has occurred.
Action: Check the errors below it for more information. The SQL string for this column may be in error.
Cause: Truncation of the table was attempted and failed.
Action: Check the following errors for more information. Truncation due to referential constraints should not occur.
Cause: The specified filename to load the table is not a database file.
Action: Specify a valid datafile.
Cause: A datafile name was given to load the table that is not part of the tablespace in which the table resides.
Action: Specify a valid datafile.
Cause: An error was encountered because a required option was not found or was invalid.
Action: Correct the problem as described in the accompanying Oracle message.
Cause: Loader could not lock the partition it needed.
Action: Have the holder of the lock relinquish it or retry the operation.
Cause: A request was made for a parallel direct load, but the object to be loaded has an enabled constraint (check, referential) and/or enabled triggers.
Action: Disable the offending enabled constraints and/or triggers and retry the parallel direct load.
Cause: A request was made for a direct load of a single partition, but the object to be loaded has an enabled constraint (check, referential) and/or enabled triggers.
Action: Disable the offending enabled constraints and/or triggers and retry the parallel direct load.
Cause: This is a header message.
Action: Check the following errors for more information. The table or partition referenced may not be accessible.
Cause: An error occured while setting the CHARSETFORM attribute of an NCHAR column.
Action: This is an internal error. Report to Oracle Worldwide Support.
Cause: An error occured while executing a DESCRIBE of a SELECT list on the given table. Check the error immediately preceding this error.
Action: Check to make sure that the table name, and all column names specified in the SQL*Loader control file are correct.
Cause: The specified partition is not part of the specified table
Action: Check to make sure that the partition specified is correct (that it is indeed a partition of the specified table.
Cause: The specified datafile is not in the tablespace of the specified partition. This error is most likely due to the use of FILE= keyword on a partitioned table. When loading all partitions of a partitioned table, the partitions must be in the same tablespace. When loading a single partition, the tablespace of the partition being loaded must be the same as the tablespace in which the specified datafile file resides.
Action: Check to make sure that the datafile specified via the FILE= keyword is in the tablespace of the partition being loaded.
00950-00999: Direct Path Load - Header MessagesThese messages are informational. They describe the kind of error that has occurred. Check the messages below them in the log file for more detailed information.