Oracle9i Database Error Messages Release 2 (9.2) Part Number A96525-01 |
|
For information about Pro*COBOL, refer to the Pro*COBOL Precompiler Programmer's Guide.
Cause: This is a generic error message from the command-line processor.
Action: Correct the indicated error.
Cause: The command line processor encountered a severe error.
Action: After making sure that all the command-line options are specified correctly, call Oracle Support Services with a full account of all the options and configuration files used.
Cause: When MODE={ANSI14 | ANSI13}, DBMS=V7 or V8 was specified, or when MODE=ANSI, DBMS=v6 was specified. These option settings are incompatible. Note that the DBMS option was not available before release 1.5 of the Oracle Precompilers.
Action: With DBMS=V7 or V8, instead of MODE={ANSI14 | ANSI13}, specify MODE={ANSI | ORACLE}. With DBMS=V6, instead of MODE=ANSI, specify MODE={ANSI14 | ANSI13 | ORACLE}, but MODE=ORACLE is recommended.
Cause: The option UNSAFE_NULL=YES has been used with DBMS=V6 or DBMS=NATIVE (the default) or has been used with MODE=ANSI/ANSI14/ANSI13.
Action: Use DBMS=V7 or V8 and MODE=ORACLE (the default) when using UNSAFE_NULL=YES or do not use UNSAFE_NULL=YES.
Cause: The precompiler option NLS_LOCAL=YES was used without also specifying MODE=ANSI. The precompiler option MODE=ANSI must be specified if NLS_LOCAL=YES.
Action: Set the precompiler option MODE=ANSI in addition to NLS_LOCAL=YES or do not set NLS_LOCAL=YES.
Cause: The USERID option was specified when SQLCHECK={SYNTAX | NONE}. This is unnecessary.
Action: Specify the USERID option only when SQLCHECK=SEMANTICS.
Cause: This is a generic error message from the command-line processor.
Action: Correct the indicated error.
Cause: The precompiler tried to parse an embedded PL/SQL block when SQLCHECK={SYNTAX | NONE}. PL/SQL blocks can be parsed only when SQLCHECK=SEMANTICS is specified.
Action: Remove the PL/SQL block or specify SQLCHECK=SEMANTICS.
Cause: The MAXLITERAL option has been used in an inline EXEC ORACLE OPTION statement after and EXEC SQL, EXEC TOOLS, or EXEC IAF statement. This is not allowed.
Action: Use the MAXLITERAL option only on the command line or in an EXEC ORACLE OPTION statement placed at the beginning of the input source file.
Cause: The SQLCHECK option was entered inline and specified a level of checking higher than the level specified (or accepted by default) on the command line. This is not allowed. For example, if SQLCHECK={SYNTAX | LIMITED} is specified on the command line, SQLCHECK={SEMANTICS | FULL} cannot be specified inline. This informational message is; the precompiler ignores the inline value and continues processing.
Action: Revise the EXEC ORACLE statement or specify a lower level of checking on the command line.
Cause: V6 compatibility is no longer supported. The precompiler will precompile as though DBMS=NATIVE was specified.
Action: Revise the specified DBMS option value from v6 to another value as desired.
Cause: The precompiler option TYPE_CODE=ANSI was used without also specifying DYNAMIC=ANSI. The precompiler option DYNAMIC=ANSI must be specified if TYPE_CODE=ANSI.
Action: Set the precompiler option DYNAMIC=ANSI in addition to TYPE_CODE=ANSI or do not set TYPE_CODE=ANSI.
Cause: The precompiler was unable to reopen a temporary file. Some possible causes follow:
Action: Check that sufficient privileges have been granted to access the file, and that it is not locked by another user. Also check that there is enough disk space and that the limit for open files is set high enough (check with the system manager).
Cause: The precompiler was unable to open the system configuration file. The system configuration file does not exist or is not in the proper directory.
Action: Check that the system configuration file is in the proper directory. See Oracle installation documentation for where this should be. Put a new copy of PCCCOB.CFG with desired default options in the proper directory.
Cause: The file name length specified exceeded the maximum length. Some operating systems have a maximum file name length.
Action: Use a file name of length less than or equal to the maximum platform specific file name length.
Cause: The precompiler was unable to open the input file specified by the INAME precompiler option. Some possible causes follow:
Action: Check that the file exists, that the search path to the file is correct, that sufficient privileges have been granted to access the file, and that it is not locked by another user. Also check with the system administrator to make sure that there is enough disk space and that the limit for open files is set high enough.
Cause: The file name length specified exceeded the maximum length. Some operating systems have a maximum file name length.
Action: Use a file name of length less than or equal to the maximum platform specific file name length.
Cause: The precompiler was unable to open the input file specified in the INCLUDE statement. Some possible causes follow:
Action: Check that the file exists, that the search path to the file is correct, that sufficient privileges to access the file have been granted, and that it is not locked by another user. Also, check that there is enough disk space and that the limit for open files is set high enough (check with the system manager).
Cause: The precompiler was unable to open the list file specified by the LNAME precompiler option. Some possible causes follow:
Action: Check that the file exists, that the search path to the file is correct, that sufficient privileges have been granted to access the file, and that it is not locked by another user. Also check that there is enough disk space and that the limit for open files is set high enough (check with the system manager). If a listing file is not needed, specify LTYPE=NONE on the command line.
Cause: The precompiler was unable to open the output file specified by the ONAME precompiler option. Some possible causes follow:
Action: Check that the file exists, that the search path to the file is correct, that sufficient privileges have been granted to access the file, and that it is not locked by another user. Also check that there is enough disk space and that the limit for open files is set high enough (check with the system manager).
Cause: The precompiler was unable to open a file for temporary use. Some possible causes follow:
Action: Check that the file exists, that sufficient privileges have been granted to access the file, and that it is not locked. Also check that there is enough disk space and that the limit for open files is set high enough (check with the system manager).
Cause: A PIC N/G variable, an implicit VARCHAR group item with a PIC N/G elementary item, or a group item with a PIC N/G elementary item was used in an EXEC SQL VAR statement. This is not allowed.
Action: Do not use the PIC N variable in an EXEC SQL VAR statement. If you want an equivalence to an Oracle type using an EXEC SQL VAR statement, use a PIC X variable, instead of a PIC N variable.
Cause: The host variable is a group item containing tables. Indicator variables used with this type of host variable must be group items of tables of indicators corresponding the tables in the group item host variable.
Action: Change the indicator variable to be a group item of indicator tables.
Cause: The host variable is a group item. Indicator variables used with this type of host variable must be a group item or table of indicator variables.
Action: Use a group item or table of indicator variables.
Cause: The variable used as a host variable was a group item which itself contained other group items.
Action: Remove any group items from the group item to be used as a host variable.
Cause: A group item host variable was used outside of an INTO or VALUES clause. A group item host variable may be used only in an INTO or VALUES clause.
Action: Do not use a group item outside of an INTO or VALUES clause.
Cause: A PIC N or PIC G variable was used in an embedded PL/SQL block when the precompiler option NLS_LOCAL=YES was used. A PIC N or PIC G variable is not supported in this situation.
Action: Do not use the PIC N or PIC G variable within the PL/SQL block or use precompiler option NLS_LOCAL=NO.
Cause: A "N" literal (a literal of the form N'...') was used within a PL/SQL block when the precompiler option NLS_LOCAL=YES was used. N literals are not supported in this situation.
Action: Use an ordinary literal (one without the "N") within the PL/SQL block or use precompiler option NLS_LOCAL=NO.
Cause: A PIC N variable was declared using an OCCURS clause. Tables of PIC N variables are not supported when NLS_LOCAL=YES.
Action: Declare the PIC N variable without an OCCURS clause or, do not use the PIC N variable in any SQL statements.
Cause: A variable of unsupported datatype was used in a SQL statement or embedded PL/SQL block.
Action: Use a host variable of a supported datatype.
Cause: A variable whose format does not support scaling was used in a SQL statement or embedded PL/SQL block. The following formats do not support scaling:
PIC S9(n) COMP PIC S9(n) COMP-4 PIC S9(n) COMP-5 PIC S9(n) BINARY PIC 9(n) COMP
Action: Remove the scale or use a datatype that support scaling.
Cause: A variable declared with DISPLAY-1 in the usage clause without PIC G or PIC N in the picture clause was used in a SQL statement.
Action: Replace DISPLAY-1 with DISPLAY or change the picture clause to use PIC N or PIC G.
Cause: The keyword VARYING was used in a PIC N variable declaration.
Action: Remove the keyword VARYING from the variable declaration. If you want to declare a PIC N VARCHAR variable, specify the precompiler option VARCHAR=YES and declare the variable as an implicit VARCHAR group item as illustrated by the following example:
EXEC SQL BEGIN DECLARE SECTION END-EXEC. ... 01 ENAME. 05 ENAME-LEN PIC S9(4) COMP. 05 ENAME-ARR PIC N(20). ... EXEC SQL END DECLARE SECTION END-EXEC.
Cause: A variable declared with a PIC clause and COMP-1 or COMP-2 was used in a SQL statement or embedded PL/SQL block.
Action: Remove the PIC clause or use a datatype other than COMP-1 or COMP-2 in the declaration of the variable.
Cause: A variable declared with a JUSTIFIED clause was used in a SQL statement or embedded PL/SQL block.
Action: Remove the JUSTIFIED clause from the variable declaration.
Cause: A variable declared with an OCCURS clause with the TO TIMES subclause was used in a SQL statement or embedded PL/SQL block.
Action: Remove the TO TIMES subclause from the variable declaration.
Cause: A variable declared with an OCCURS clause with the ASCENDING or DESCENDING KEY IS subclause was used in a SQL statement or embedded PL/SQL block.
Action: Remove the ASCENDING or DESCENDING KEY IS subclause from the variable declaration.
Cause: A variable declared with an OCCURS INDEXED clause was used in a SQL statement or embedded PL/SQL block.
Action: Remove the OCCURS INDEXED clause from the variable declaration.
Cause: A variable declared with a RENAMES clause was used in a SQL statement or embedded PL/SQL block.
Action: Remove the RENAMES clause from the declaration.
Cause: A size which is specified which is not valid for the specified data type.
Action: Specify a size which is valid for the specified type.
Cause: A scale which is specified which is not valid for the specified data type.
Action: Specify a scale which is valid for the specified type.
Cause: A variable declared with an OCCURS clause with the DEPENDING ON subclause was used in a SQL statement or embedded PL/SQL block.
Action: Remove the DEPENDING ON subclause from the variable declaration.
Cause: A variable declared with PIC S9(n), with n greater than what is allowed on the given platform, was used in an embedded SQL statement. On 32 bit machines n must not exceed 9, and on 64 bit machines, n must not exceed 18.
Action: Use a smaller number in the picture clause that does not exceed the maximum allowed size on your platform or use COMP-3.
Cause: A variable used in a SQL statement was not declared or its name is misspelled or if option DECLARE_SECTION=YES the declaration was not in a DECLARE SECTION.
Action: Add or correct the variable declaration.
Cause: There is more than one variable of the same name and the qualification given was insufficient to determine which variable the reference was to.
Action: Use more complete qualification in the variable reference.
Cause: The name of a descriptor, statement, or cursor was not declared or is misspelled, or was declared as a different kind of SQL identifier.
Action: Add or correct the descriptor, statement, or cursor declaration.
Cause: The SQL identifier (cursor name, statement name, and so on) has already been defined in another way.
Action: Use a different name for this use of the name.
Cause: An indicator variable used in a SQL statement was not declared in the Declare Section or its name is misspelled.
Action: Add or correct the indicator variable declaration.
Cause: An unacceptable group item variable was used in a SQL statement. or its name is misspelled.
Action: Correct the group item variable declaration or its use in the SQL statement.
Cause: An indicator variable was not declared in the Declare Section as a 2-byte integer. Indicator variables must be defined as 2-byte integers.
Action: Redefine the indicator variable as a 2-byte integer.
Cause: A host variable array was used with an indicator array declared with a smaller dimension. For example:
EXEC SQL BEGIN DECLARE SECTION END-EXEC. 01 EMP-NUM OCCURS 4 TIMES PIC S9(4) COMP. 01 EMP-NUM-IND OCCURS 2 TIMES PIC S9(4) COMP. EXEC SQL END DECLARE SECTION END-EXEC. ... SELECT ... INTO EMP-NUM:EMP-NUM-IND ...
Action: Increase the size of the indicator array.
Cause: In an EXEC SQL statement, an indicator variable had the same name as a host variable. The names of a host variable and its associated indicator variable must be different. Also, an indicator variable cannot be used as a host variable.
Action: Rename the host or indicator variable.
Cause: A host table was used in the WHERE clause of a SELECT-INTO statement or in the SELECT list of a SELECT-INTO statement.
Action: Rewrite the SELECT statement without using tables or use a cursor.
Cause: The size of an table variable in an INTO/USING clause is too small for the number of rows processed.
Action: Declare all table variables in the INTO/USING clause to have at least the minimum dimension given.
Cause: The count variable in a FOR clause has the wrong datatype. The datatype must be NUMBER or LONG (or be compatible with NUMBER or LONG).
Action: Check the declaration and check that the count variable has a datatype of NUMBER or LONG (or a compatible Oracle or host-language datatype).
Cause: The size of a table variable in an INTO/USING clause of a dynamic EXECUTE statement has been ARRAYLEN...EXECUTE'd while the other host variable has not and is not a table of dimension 1 or a plain non-table host variable. Example:
01 X PIC X(10) OCCURS 10. 01 Y PIC S9(4) COMP OCCURS 10. 01 Z PIC S9(4) COMP. ... EXEC SQL ARRAYLEN X (DIM) EXECUTE END-EXEC. ... EXEC SQL EXECUTE S1 USING :X, :Y END-EXEC. <-- error EXEC SQL EXECUTE S1 USING :X, :Z END-EXEC. <-- ok
Please note that this error differs from 233 in that it is an error and not a warning.
Action: ARRAYLEN...EXECUTE all of the table variables in the INTO/USING clause or those host variables not ARRAYLEN...EXECUTEd need to be of dimension 1.
Cause: To use PIC N or PIC G variables as host variables, both of the environment variables NLS_LANG and NLS_NCHAR must be set with correct values. One of the following problems has occurred which prevents Pro*COBOL from accepting PIC N and PIC G variables as host variables:
Action: Set the NLS_NCHAR environment variable to a valid fixed width character set name. Set NLS_LANG with a valid language, territory, and character set.
Cause: A VARYING or SQL-CURSOR declaration has been encountered which has the level number greater than 48.
Action: Change the level to 48 or less.
Cause: A group item that is a table and having an element that is a table was used in a SQL statement.
Action: Remove the OCCURS clause from the element of the group item.
Cause: A group item that is a table and used as an indicator has an element that is a table or group item.
Action: Change the nested table or group item in the indicator so that it is an elementary item.
Cause: An elementary item belonging to a group item with an OCCURS clause has been referenced. This is not allowed.
Action: Change the elementary item used to an item that is not an element of a table of group items.
Cause: The COUNT item in the dynamic SQL statement must be a host variable but is not.
Action: Use a host variable in the COUNT item of the dynamic SQL statement.
Cause: The particular item in the dynamic SQL statement is required to be a host variable or exact numeric (integer) constant, but is not.
Action: Change the item in the dynamic SQL statement to use a host variable or exact numeric constant.
Cause: An Oracle extension to the ANSI/ISO standard was used. Specifically, a pointer or nonconforming datatype such as VARCHAR was used. For example, the offending code might look like:
EXEC SQL BEGIN DECLARE SECTION END-EXEC. 01 USERNAME PIC X(10) VARYING. EXEC SQL END DECLARE SECTION END-EXEC.
This informational message is issued by the FIPS Flagger when FIPS=YES.
Action: No action is required.
Cause: An Oracle extension to the ANSI/ISO SQL standard was used. Specifically, a non-ANSI function was used. This informational message is issued by the FIPS Flagger when FIPS=YES.
Action: No action is required. However, for ANSI/ISO compliance, do not use this function.
Cause: An Oracle extension to the ANSI/ISO SQL standard was used. Specifically, a nonconforming SQL statement such as PREPARE was used. For example, the offending code might look like:
EXEC SQL PREPARE SQL-STMT FROM :HV END-EXEC.
This informational message is issued by the FIPS Flagger when FIPS=YES.
Action: No action required. However, for ANSI/ISO compliance, do not use the nonconforming statement.
Cause: An Oracle extension to the ANSI/ISO SQL standard was used. Specifically, dynamic SQL or embedded PL/SQL was used. For example, the offending code might look like:
EXEC SQL EXECUTE BEGIN SELECT ... END; END-EXEC.
This informational message is issued by the FIPS Flagger when FIPS=YES.
Action: No action required. However, for ANSI/ISO compliance, do not use dynamic SQL or embedded PL/SQL.
Cause: An Oracle extension to the ANSI/ISO SQL standard was used. Specifically, a nonconforming keyword such as NOTFOUND, STOP, RAISE, or DO was used in the WHENEVER statement. (Note that NOT FOUND is ANSI-compliant.) For example, the offending code might look like:
EXEC SQL WHENEVER SQLERROR STOP END-EXEC.
This informational message is issued by the FIPS Flagger when FIPS=YES.
Action: No action required. However, for ANSI/ISO compliance, do not use the nonconforming keyword.
Cause: An Oracle extension to the ANSI/ISO SQL standard was used. Specifically, the parameter RELEASE, COMMENT, or FORCE were used in a COMMIT or ROLLBACK statement. For example, the offending code might look like:
EXEC SQL ROLLBACK RELEASE END-EXEC.
This informational message is issued by the FIPS Flagger when FIPS=YES.
Action: No action required. However, for ANSI/ISO compliance, do not use the nonconforming parameter.
Cause: An Oracle extension to the ANSI/ISO SQL standard was used. Specifically, one of the following statements was used:
This informational message is issued by the FIPS Flagger when FIPS=YES.
Action: No action is required. However, for ANSI/ISO compliance, do not use any of these statements.
Cause: An Oracle extension to the ANSI/ISO SQL standard was used. Specifically, the DROP TABLE statement was used. This informational message is issued by the FIPS Flagger when FIPS=YES.
Action: No action is required. However, for ANSI/ISO compliance, do not use the DROP statement.
Cause: An Oracle extension to the ANSI/ISO SQL standard was used. Specifically, the FOR clause was used in an table-processing SQL statement. For example, the offending code might look like:
EXEC SQL FOR :LIMIT INSERT INTO EMP (EMPNO, JOB, DEPTNO) VALUES (:EMPNUM, :JOB, :DEPTNO) END-EXEC.
This informational message is issued by the FIPS Flagger when FIPS=YES.
Action: No action required. However, for ANSI/ISO compliance, do not use the FOR clause.
Cause: An Oracle extension to the ANSI/ISO SQL standard was used. Specifically, the CONNECT statement was used to log on to Oracle. For example, the offending code might look like:
EXEC SQL CONNECT:USERNAME IDENTIFIED BY:PSSWORD END-EXEC.
This informational message is issued by the FIPS Flagger when FIPS=YES.
Action: No action required. However, for ANSI/ISO compliance, specify the AUTO_CONNECT command-line option instead of using a CONNECT statement.
Cause: An Oracle extension to the ANSI/ISO SQL standard was used. Specifically, the AT db_name clause was used in a SQL statement. For example, the offending code might look like:
EXEC SQL AT oracle3 COMMIT RELEASE END-EXEC.
This informational message is issued by the FIPS Flagger when FIPS=YES.
Action: No action required. However, for ANSI/ISO compliance, do not use the AT db_name clause.
Cause: An Oracle extension to the ANSI/ISO SQL standard was used. Specifically, the EXEC SQL VAR statement was used.
Action: No action required. However, for ANSI/ISO compliance, do not use the EXEC SQL VAR statement.
Cause: An Oracle extension to the ANSI/ISO SQL standard was used. Specifically, the keyword WORK was used in a COMMIT or ROLLBACK statement. For example, the offending code might look like:
EXEC SQL COMMIT WORK RELEASE END-EXEC.
This informational message is issued by the FIPS Flagger when FIPS=YES.
Action: No action required. However, for ANSI/ISO compliance, do not use the keyword WORK.
Cause: An Oracle extension to the ANSI/ISO SQL standard was used. Specifically, the TO SAVEPOINT save_id clause was used in a ROLLBACK statement.
Action: No action required. However, for ANSI/ISO compliance, do not use the TO SAVEPOINT clause.
Cause: An Oracle extension to the ANSI/ISO SQL standard was used. Specifically, the DECLARE DATABASE statement was used.
Action: No action required. However, for ANSI/ISO compliance, do not use this statement.
Cause: An Oracle extension to the ANSI/ISO SQL standard was used. Specifically, the DECLARE TABLE statement was used.
Action: No action required. However, for ANSI/ISO compliance, do not use this statement.
Cause: An Oracle extension to the ANSI/ISO SQL standard was used. Specifically, the one of the following statements was used:
This informational message is issued by the FIPS Flagger when FIPS=YES.
Action: No action is required. However, for ANSI/ISO compliance, do not use any of these statements.
Cause: An Oracle extension to the ANSI/ISO SQL standard was used. Specifically, a group item variable was used as a host variable. This informational message is issued by the FIPS Flagger when FIPS=YES.
Action: No action is required. However, for ANSI/ISO compliance, do not use group items as host variables.
Cause: An Oracle extension to the ANSI/ISO SQL standard was used. Specifically, the ARRAYLEN statement was used. This informational message is issued by the FIPS Flagger when FIPS=YES.
Action: No action is required. However, for ANSI/ISO compliance, do not use this statement.
Cause: An Oracle extension to the ANSI/ISO SQL standard was used. Specifically, an EXEC ORACLE statement was used. This informational message is issued by the FIPS Flagger when FIPS=YES.
Action: No action is required. However, for ANSI/ISO compliance, do not use this statement.
Cause: An Oracle extension to the ANSI/ISO SQL standard was used. Specifically, a variable declared of VARYING type was used in a SQL statement. This informational message is issued by the FIPS Flagger when FIPS=YES.
Action: No action is required. However, for ANSI/ISO compliance, do not use this statement.
Cause: An Oracle extension to the ANSI/ISO SQL standard was used. Specifically, an implicit varchar variable was used in a SQL statement. This informational message is issued by the FIPS Flagger when FIPS=YES.
Action: No action is required. However, for ANSI/ISO compliance, do not use this statement.
Cause: An Oracle extension to the ANSI/ISO SQL standard was used. Specifically, an EXEC SQL LOB statement was used. This informational message is issued by the FIPS Flagger when FIPS=YES.
Action: No action is required. However, for ANSI/ISO compliance, do not use this statement.
Cause: A syntax error was found.
Action: Do the appropriate action to fix the indicated error.
Cause: The character string was not terminated with a quote or apostrophe as appropriate or line continuation was not correct.
Action: Check that the character string is terminated properly and that line continuation syntax is correct.
Cause: A block of pseudo-text has not been properly terminated with "==".
Action: Terminate the pseudo-text at the appropriate place with "==".
Cause: An EXEC statement began in Area A (before column 12).
Action: Shift the EXEC statement to the right to start it in Area B (in or after column 12).
Cause: A syntax error was found.
Action: Do the appropriate action to fix the indicated error.
Cause: No EXEC SQL CONTEXT USE statement was encountered and the option THREADS=YES was requested.
Action: Ensure that the necessary context variable (of type SQL-context) has been declared, ALLOCATEd, and USEd prior to any executable SQL statements.
Cause: The runtime context variable referenced in an EXEC SQL CONTEXT USE statement is not of type SQL_CONTEXT.
Action: Declare your runtime context variable of type SQL_CONTEXT.
Cause: EXEC SQL ENABLE THREADS has been used, even though option THREADS is set to NO.
Action: Specify option THREADS=YES or remove the EXEC ENABLE THREADS statement from the source code.
Cause: An explicit AT clause was used with an ALLOCATE statement or a FETCH/CLOSE statement also using a SQL-cursor declaration.
Action: Remove the AT clause.
Cause: The precompiler was unable to log on to Oracle with the specified username and password. An Oracle error with given number occurred when the logon was attempted.
Action: Lookup indicated Oracle database error message and take appropriate action.
Cause: The precompiler has encountered an include SQLCA statement after SQLCA has already been included. The SQLCA can only be included once.
Action: Remove the duplicate include SQLCA statement.
Cause: The SQLCA has been included and a SQLCODE variable has been declared. This is not allowed as references to the SQLCODE variable are ambiguous and will result in COBOL compiler errors.
Action: Use either the SQLCA or the SQLCODE variable. Remove either the include of the SQLCA or the SQLCODE variable declaration.
Cause: A FOR clause was used with a SELECT, LOB, or DEALLOCATE DESCRIPTOR statement. A FOR clause cannot be used with these statements. In the case of a SELECT statement, data returned from the last loop in the execution of the SELECT would overwrite data returned in a previous loop.
Action: Remove the FOR clause from the statement. Use a host language construct to iteratively execute the statement.
Cause: When MODE={ANSI | ANSI14}, an attempt was made to use the WHENEVER SQLWARNING statement without declaring the SQLCA. When MODE={ANSI | ANSI14}, declaring the SQLCA is optional, but to use the WHENEVER SQLWARNING statement, the SQLCA must be declared.
Action: Remove all WHENEVER SQLWARNING statements from the program or declare the SQLCA by hard-coding it or copying it into the program with the INCLUDE statement.
Cause: If mode=ORACLE, then a cursor defined with a WHERE CURRENT OF clause must also have a FOR UPDATE clause.
Action: Rewrite the cursor definition.
Cause: A fatal parsing error or token stack overflow error has been encountered.
Action: Fix the syntax error that is causing the parsing error.
Cause: A severe semantics error occurred because the USING clause was used with the OPEN cursor statement and the cursor declaration is not for a PREPAREd statement. The correct sequence of statements should be like:
EXEC SQL prepare sv from :sel_stmt END-EXEC. EXEC SQL declare csv cursor for sv END-EXEC. EXEC SQL open csv USING :hv1, :hv2 END-EXEC.
Action: Use the prepare statement for the SQL statement and use that in the declare cursor statement.
Cause: An invalid external datatype was specified in the EXEC SQL VAR statement.
Action: Specify a valid external datatype.
Cause: Refer to the indicated PL/SQL error message for the indicated condition.
Action: Refer to the indicated PL/SQL error message to correct the SQL statement or embedded PL/SQL block.
Cause: The precompiler found an error in an embedded SQL statement or PL/SQL block.
Action: Refer to the indicated PL/SQL error message to correct the SQL statement or embedded PL/SQL block.
Cause: ARRAYLEN is only valid with PL/SQL.
Action: Use an appropriate table type.
Cause: In an ARRAYLEN statement, the name of a previously declared host table was not specified. The first host variable in an ARRAYLEN statement must be a table. The second host variable, which specifies an array dimension, must be a 4-byte integer. The correct syntax follows:
EXEC SQL ARRAYLEN HTABLE (DIM) END-EXEC.
The ARRAYLEN statement must appear along with, but somewhere after, the declarations of HOST_TABLE and dimension.
Action: Check the spelling of both identifiers in the ARRAYLEN statement. If necessary, supply the missing host table name.
Cause: A valid table dimension was not specified in an ARRAYLEN statement. The table dimension must be specified using a previously declared 4-byte integer host variable, not a literal or expression. For example, the offending code might look like:
EXEC SQL ARRAYLEN ETABLE (25) END-EXEC. -- illegal dimension
Action: Supply a valid table dimension. If necessary, declare a 4-byte integer host variable for use in the ARRAYLEN statement.
Cause: Within a PL/SQL statement, a host variable was used with two different indicator variables or was used with an indicator variable in one instance and without an indicator in another instance.
Action: Change all references to the host variable so that they all use the same indicator variable or all use no indicator variable.
Cause: Within a PL/SQL statement, the variable was used as both a host variable and an indicator variable.
Action: Use different variables for host variables and indicator variables.
Cause: Indicator variables associated with host variables cannot be used in EXEC IAF statements such as GET and PUT in a user exit.
Action: Eliminate the indicator variables. If feasible (for example with Forms V4), use EXEC TOOLS statements, which do allow indicator variables. See the Pro*COBOL Precompiler Programmer's Guide for more information about the EXEC IAF and EXEC TOOLS statements.
Cause: If a host variable is used to specify the message in an EXEC TOOLS MESSAGE statement, that host variable must be of a CHAR type.
Action: Declare the message to a host variable of a CHAR type.
Cause: In a LOB DESCRIBE, an indicator variable was used with a host variable when retrieving a LOB attribute that does not require one.
Action: Remove the indicator variable.
Cause: A LOB operation was attempted between LOBs whose types were not compatible. For example, When ASSIGNing one LOB to another, both LOBs must be of the same type. If they are not, this error results.
Action: Correct the LOB operation by having it function between LOBs of the same type. This may require a redeclaration of one of the LOBs used in the LOB statement performing the specified operation.
Cause: The given host variable was not declared to be of the required character type. In this case, one of several possible character types would have been accepted. However, the host variable type did not match any of them.
Action: Redeclare the problematic host variable, using one of the permitted character types.
Cause: This error can occur in either of the following situations:
Action: Either the LOB type or the buffer type needs to be changed so that the LOB and buffer types become compatible for the specified operation.
Cause: The given host variable was not declared to be an internal LOB. BLOB, CLOB or NCLOB are internal lob types.
Action: Redeclare the host variable using one of the internal LOB types.
Cause: The given host variable was not declared to be any type of LOB, Internal or External. BLOB, CLOB or NCLOB are internal lob types. BFILE is an external type.
Action: Redeclare the host variable using any of the LOB types, Internal or External.
Cause: The given host variable was not declared to be an External LOB. BFILE is an external type.
Action: Redeclare the host variable using an External LOB type (BFILE).
Cause: An attempt was made to OPEN a BFILE in READ WRITE mode. Writable BFILEs are currently not supported so this operation is considered erroneous.
Action: Do not open BFILEs using READ WRITE mode. BFILEs can only be OPENed in READ ONLY mode.
Cause: The host variable and attribute pairing in a LOB DESCRIBE was invalid. Most likely, this was due to some problem with the host variable. For example, this error could occur if the host variable was not declared.
Action: Usually, other, more specific, errors will accompany this one. Correcting some or all of those problems should resolve this error.
Cause: A request for a LOB attribute was made in a LOB DESCRIBE statement in which the given LOB was not of some Internal LOB type.
Action: Replace the LOB host variable in the LOB DESCRIBE with one that was declared to be an Internal LOB.
Cause: A request for a LOB attribute was made in a LOB DESCRIBE statement in which the given LOB was not an External LOB type (BFILE).
Action: Use an External LOB (BFILE) host variable in the LOB DESCRIBE statement.
Cause: A host variable was given that was not declared to be of some acceptable exact binary integer type. Generally, when this error occurs, a signed or unsigned integer type was expected. Floating point or otherwise imprecise numeric types are considered erroneous.
Action: Replace the problematic host variable with one that was declared using a proper binary integer type.
Cause: A request for a LOB attribute was made in a LOB DESCRIBE statement in which the given source was not an internal or external LOB type.
Action: Use a LOB host variable in the LOB DESCRIBE statement.
Cause: A destination offset was specified in a LOB WRITE APPEND statement. The destination offset is assumed to be the end of the LOB so specifying an explicit destination offset is erroneous.
Action: Remove the destination offset from the LOB WRITE APPEND statement.
Cause: One of the following statements was used without specifying DYNAMIC=ANSI:
Action: Specify DYNAMIC=ANSI or remove statement(s) like those above.
Cause: The value specified in the WITH MAX clause of an EXEC SQL ALLOCATE DESCRIPTOR statement was less than 1 or greater than 65535.
Action: Specific a value between 1 and 65535.
Cause: The value specified in the VALUES clause of an EXEC SQL GET/SET DESCRIPTOR statement was less than one or greater than 65535.
Action: Specify a value between 1 and 65535.
Cause: Pro*COBOL has detected an abnormal condition in its internal data structures. This error message should not normally be produced. Contact Oracle Support Services to report the error.
Action: Correct any other errors which have been reported. If the internal error still exists, examine the source code where the condition was detected and try modifying in some way. Possibly this will alleviate the internal error condition.
Cause: Pro*COBOL was unable to access the message file containing message text. The file is possibly corrupt.
Action: Contact Oracle Support Services for information on reinstalling the Pro*COBOL message files.
Cause: Pro*COBOL was unable to access the message file containing message text. The file is possibly corrupt.
Action: Contact Oracle Support Services for information on reinstalling the Pro*COBOL message files.
|
Copyright © 1996, 2002 Oracle Corporation. All Rights Reserved. |
|