-1000 to -5300
Relational Engine Status Codes
This section lists status codes returned by the Relational Engine. Should you encounter an error code that is not listed in this section, be sure to record the steps taken to get the particular error you received and notify PSQL Technical Support.
-1003: Invalid API parameter
A parameter was passed to an invalid internal API.
-1011: Out of memory
This status code may be returned in if the engine tries to allocate memory and is unsuccessful.
Free up some resources and try again. Reduce the Cache Allocation Size and/or Max MicroKernel Memory Usage configuration settings; or exit other applications on the computer.
-1020: No more file handles
While trying to open a file, a handle was not returned. Close some of your open programs and files and try again.
-1024: File share violation
There was an attempt to open a file that is read only or the specified user does not have the proper rights to open the file. Record the steps taken to get this error and notify PSQL Technical Support.
-1026: Record size limit exceeded
The record length was larger than the maximum allowed and some data has been truncated. Record the steps taken to get this error and notify PSQL Technical Support.
-1032: File access denied
There was an attempt to open a file that is read only or the specified user does not have the proper rights to open the file. Record the steps taken to get this error and notify PSQL Technical Support.
-1040: Too many columns defined
The maximum number of columns that can be defined is 1600 in a select statement; and 1536 elsewhere. Reduce the number of columns to within a valid range and try again.
-1113: Too many active sessions
For Pervasive.SQL 8 and higher versions, the number of sessions allowed is allocated dynamically.
-1206: Non-db file or corrupted db
The file specified is not a valid database name or the database is corrupt.
-1207: Database exclusively locked
There was an attempt to access a database that has been exclusively locked by another user. Wait until the user removes the exclusive lock before continuing.
-1250: Same column cannot be renamed and modified
You cannot rename a column and modify that column at the same time. For example, the following statement causes an error because column c1 is being renamed and modified at the same time: alter table t1 (rename column c1 to c2, modify column c1 int). However, the following statement is permissible because different columns are being renamed and modified: alter table t1 (rename column c1 to c2, modify column c3 int).
-1251: Multiple columns may not be renamed to the same name
When you rename multiple columns, each new name must be unique. You cannot rename two different columns to the same name. For example, the following statement causes an error because columns c1 and c3 cannot both be named c2: alter table t1 (rename column c1 to c2, rename column c3 to c2).
-1252: Column may not be renamed multiple times
When you rename multiple columns, you can rename the same column only once. For example, the following statement causes an error because column c1 is being renamed twice: ALTER TABLE t1 (RENAME COLUMN c1 to c2, RENAME COLUMN column c1 to c3).
-1302: Table is exclusively locked
There was an attempt to access a table that has been exclusively locked by another user. Wait until the user removes the exclusive lock before continuing.
-1303: Table already exists
The name you specified for a table already exists in the dictionary. Select another name or remove the current table definition before trying again.
-1304: Table is in use, cannot perform operation
The requested operation cannot be performed because another user is accessing or modifying the table. Try the operation again.
-1305: No such table or object
The table or object your tried to access does not exist. Check for the correct name and path and try again.
-1309: No DDLs without exclusive lock
You must perform an exclusive lock on the desired database before using DDL statements.
-1312: View already exists
The name that you specified for a view already exists in the dictionary. Select another name or remove the current view definition and try the operation again.
-1313: Trigger already exists
The name that you specified for a trigger already exists in the dictionary. Select another name or remove the current view definition and try the operation again.
-1314: No such table exists
The name you specified for a table does not exists in the dictionary. Specify the name of an existing table and try the operation again.
-1315: No such view exists
The name you specified for a view does not exists in the dictionary. Specify the name of an existing view and try the operation again.
-1316: No such trigger exists
The name you specified for a trigger does not exists in the dictionary. Specify the name of an existing trigger and try the operation again.
-1317: No such index exists
The name you specified for an index does not exists in the dictionary. Specify the name of an existing index and try the operation again.
-1403: Duplicate index exists
You have attempted to define the same index more than once in this definition. Rewrite the statement so the index is defined only once.
In some cases, you may be re-issuing a create index statement because you cannot tell if your first statement succeeded. If you receive this error code under such conditions, then you can proceed on the assumption that your first create index operation was successful.
-1404: No such index
You tried to access an index that does not exist. Check the name and path and try again.
-1504: Null not valid
Null is not a valid parameter in the operation performed.
-1507: No such column
The column specified does not exist. Specify a correct column name.
-1508: Field is already defined
The field specified for this table has already been defined.
-1513: Index column type not supported
You cannot create an index on column types BIT, LONGVARCHAR, or LONGVARBINARY. You must create the index using a different column type.
-1520: Key length is invalid
You cannot index a character column greater than 254 characters.
-1603: Currency not on a record
A query required a temporary table and there was no unique row identifier (index) to correlate the temporary table to the result set. Adding an index to the order by or group by column will often resolve this problem.
-1605: Illegal duplicate key
This status code is returned in the following situations:
-1809: Permission denied
The user does not have the appropriate rights for that action. Check the user permissions and try again. If this problem persists, check with your system administrator.
-1810: You are not authorized to perform this operation
The user does not have the appropriate rights for that action. Check the user permissions and try again. If this problem persists, check with your system administrator.
This status code can also be returned when you try the following conditions:
-1902: Unable to logon. An invalid Username/Password may have been specified
An invalid username or password may have been specified. Check your password and try again. If you continue to have problems, check with your system administrator.
-1903: Invalid account name
Either a user with the specified user name or a group with the specified group name does not exist. Check your user/group name and try again. If you continue to have problems, check with your system administrator.
-1905: Invalid password
The password specified was not correct. Check your password and try again. If you continue to have problems, check with your system administrator.
-1907: Access denied
The user does not have the proper permissions to access the file.
-3001: User-defined functions with the same name already exist
You are trying to create a user-defined function (UDF) with the same name as an existing one. Modify the name of the UDF and execute the CREATE statement again.
-3002: The user-defined function name is invalid. User-defined function name can contain 1 to 30 characters
The length of a user-defined function (UDF) name must be at least one character and cannot exceed 30 characters. Modify the name of the UDF to fit within the name length restrictions.
-3003: Cannot insert into a COBOL data file. Invalid operation
COBOL applications that include OCCURS, partial REDEFINES, or variable record layout can enable SQL access to the Btrieve data files by using the Cobolschemaexec utility. (The utility describes the application’s understanding of data to the PSQL Relational Engine.) You cannot perform an INSERT operation on such data files.
-3005: Cannot alter a COBOL fake table. Invalid operation
COBOL applications that include OCCURS, partial REDEFINES, or variable record layout can enable SQL access to the Btrieve data files by using the Cobolschemaexec utility. (The utility describes the application’s understanding of data to the PSQL Relational Engine.) You cannot perform an ALTER TABLE operation on such data files.
-3006: Cannot create triggers on COBOL tables. Invalid operation
COBOL applications that include OCCURS, partial REDEFINES, or variable record layout can enable SQL access to the Btrieve data files by using the Cobolschemaexec utility. (The utility describes the application’s understanding of data to the PSQL Relational Engine.) You cannot perform a CREATE TRIGGER operation on such data files.
-3007: Cannot create indexes on OCCURS/REDEFINES fields. Invalid operation
COBOL applications that include OCCURS, partial REDEFINES, or variable record layout can enable SQL access to the Btrieve data files by using the Cobolschemaexec utility. (The utility describes the application’s understanding of data to the PSQL Relational Engine.) You cannot perform a CREATE INDEX operation on such data files.
-3008: A dependent OCCURS table entry exists. Drop this OCCURS table to drop the main table
COBOL applications that include OCCURS, partial REDEFINES, or variable record layout can enable SQL access to the Btrieve data files by using the Cobolschemaexec utility. (The utility describes the application’s understanding of data to the PSQL Relational Engine.) If a main table contains any OCCURS layouts, you must delete the OCCURS tables before you can delete the main table.
-3009: There is a dependent REDEFINES table. Drop this REDEFINES table to drop the main table
COBOL applications that include OCCURS, partial REDEFINES, or variable record layout can enable SQL access to the Btrieve data files by using the Cobolschemaexec utility. (The utility describes the application’s understanding of data to the PSQL Relational Engine.) If a main table contains any REDEFINES layouts, you must delete the REDEFINES tables before you can delete the main table.
-3010: An OCCURS table with a mapping index to this index exists. Cannot drop index
COBOL applications that include OCCURS, partial REDEFINES, or variable record layout can enable SQL access to the Btrieve data files by using the Cobolschemaexec utility. (The utility describes the application’s understanding of data to the PSQL Relational Engine.) A main table can contain indexes to which an OCCURS table can map. If an OCCURS table maps a main table index, you cannot delete the main table index unless you first remove the mapping from the OCCURS table.
-3011: A push-down filter has been defined on this column. This column cannot be updated
COBOL applications that include OCCURS, partial REDEFINES, or variable record layout can enable SQL access to the Btrieve data files by using the Cobolschemaexec utility. (The utility describes the application’s understanding of data to the PSQL Relational Engine.) A table can contain a logical expression associated with the table. Such a table filter is referred to as a “push-down filter.”
You cannot update a column if it has a push-down filter defined it.
-3012: Only CREATE INDEX IN DICTIONARY operation is supported for COBOL fake main table and variant records
COBOL applications that include OCCURS, partial REDEFINES, or variable record layout can enable SQL access to the Btrieve data files by using the Cobolschemaexec utility. (The utility describes the application’s understanding of data to the PSQL Relational Engine.) You cannot perform a CREATE INDEX operation on a variable record layout table unless you use the IN DICTIONARY keyword (CREATE INDEX . . . IN DICTIONARY . . .).
-3014: Trigger already exists
You are trying to create a trigger, but a trigger with the specified name already exists. Either use a different name, or drop the existing trigger before creating the new one.
-3015: Procedure already exists
You are trying to create a stored procedure, but a stored procedure with the specified name already exists. Either use a different name, or drop the existing stored procedure before creating the new one.
-3016: The fixed-portion size of a record exceeds 65535 bytes
The total size of the fixed-length portion of a record has exceeded 65535 bytes. The total size of the fixed-length portion of any data record may not exceed 65535 bytes. The fixed-length portion of any data record is made up of the following:
Status code -3016 is returned if you attempt to create a table that exceeds this limit, or if you attempt modifications that would cause a table to exceed the limit.
To determine the size in bytes of the fixed-length portion of a record before you attempt to create a new table, you can use the following calculation:
(sum of the fixed-length column sizes in bytes) + (number of nullable columns) + (8 * number of variable-length columns) = record size in bytes
If you want to determine the size of the fixed-length portion of the record for an existing data file, you can use the BUTIL -STAT command to display a report that includes this information.
-3017: Invalid path/file name
The path/file name for the data file is too long.
-3018: Invalid data type conversion to an identity column
An attempt was made to alter a data type to an identity column.
-3019: Cannot drop a system table
An attempt was made to drop a system table.
-3020: Invalid USING path/file name
The path/file name that you have specified is invalid. Specify a simple, relative path between 1-64 characters.
-3021: Invalid IN DICTIONARY
IN DICTIONARY is not allowed on bound databases.
-3022: Invalid BLOB/CLOB data type in legacy table that contains NOTE/LVAR
A NOTE/LVAR column cannot coexist with a LONGVARCHAR/LONGVARBINARY. NOTE/LVAR must first be altered to a LONGVARCHAR/LONGVARBINARY.
-3023: Data type mismatch
Data conversion failed because data cannot be converted due to data type mismatch or data overflow. This error may occur if, for example, you attempt to alter a column of type DOUBLE to type FLOAT.
-3024: String or binary data truncation error
An attempt was made to convert a char/binary data to a char/binary column that has fewer bytes.
-3025: Arithmetic overflow error
An attempt was made to convert a number to a numeric column that has less precision.
-3026: Invalid NULL conversion
You cannot convert the value NULL into a not nullable column.
-3027: Invalid foreign key constraint name
The foreign key constraint name that you have specified is invalid. Specify a name between 1-20 characters, using numerals and letters only. It must start with a letter.
-3028: Invalid password
The password that you have specified is invalid. See the “password” entry in the table Identifier Restrictions by Identifier Type in Advanced Operations Guide for maximum length of a password and the characters allowed.
-3029: Invalid group or user name
The group or user name that you have specified is invalid. Specify a group or user name between 1and 30 characters. Numerals and letters only. Must start with a letter.
-3030: Invalid procedure or trigger name
The procedure or trigger name that you have specified is invalid. Specify a name between 1-30 characters. Numerals and letters only. Must start with a letter.
-3031: MKC library cannot be loaded
The attempt to load MKC library failed. Ensure that the following file is located in the proper directory and is the correct version for your product:
Linux: libmkc.* is located in /usr/local/psql/lib directory.
-3032: Column in use by primary key
An attempt was made to delete all indexes referencing a column. An index was encountered that is used in the primary key.
-3033: Column in use by foreign key
An attempt was made to delete all indexes referencing a column. An index was encountered that is used in the foreign key.
-3034: Type cannot be null
The requested operation cannot be performed on a column definition that is nullable.
-3035: Length of the foreign key is incompatible
You cannot define a foreign key if the column it references has a different type or attribute.
-3036: Scale of the foreign key is incompatible
You cannot define a foreign key if the column it references has a different type or attribute.
-3037: Precision of the foreign key is incompatible
You cannot define a foreign key if the column it references has a different type or attribute.
-3038: Data Type of the foreign key is incompatible
You cannot define a foreign key if the column it references has a different data type.
-3039: Trigger dependency
You cannot drop the referenced table because a trigger refers to it.
-3040: Group already exists
A group with the specified group name already exists. Use a different group name. If you continue to have problems, check with your system administrator.
If you just tried to create the specified group, but you tried again because you are not sure if it was created, this error indicates that the group was in fact created with the first attempt.
-3041: User already exists
A user with the specified user name already exists. Use a different user name. If you continue to have problems, check with your system administrator.
If you just tried to create the specified user, but you tried again because you are not sure if it was created, this error indicates that the user was in fact created with the first attempt.
-3043: Table referenced by foreign key
Cannot drop the table because it is referenced by a foreign key.
-3044: Too many levels of trigger recursion
A trigger cannot be recursively called more than 30 times.
-3045: Index in use by foreign key
Cannot drop the index because it is referred to by a foreign key.
-3046: Integrity Constraint Violation
Nullable columns are not allowed in this operation.
-3047: RI no matching primary key
You tried to create a foreign key before defining a primary key. Define a primary key before continuing.
-3048: Invalid page size
The page size specified is invalid. Specify a page size that is a multiple of 512 and lies in the range 512-4,096 bytes (4,096 is the default).
-3049: Invalid free space threshold
The free space specified is not valid. Specify a free space percentage of 5, 10, 20, or 30 percent.
-3050: Invalid page number
The page number specified is not valid. Specify a page number between 1-65,535.
-3051: The dictionary is in use
The dictionary you are trying to access is already locked by another user. Wait until that user has unlocked the dictionary and try again.
-3052: Dictionary already exists
A dictionary with the specified name already exists in that directory. Use a different dictionary name or path.
-3053: RI table does not exist
There was an attempt to define referential integrity upon a table that does not exist. Check the table name and try again.
-3054: Duplicate savepoint name error
The specified savepoint name already exists.
-3055: Only one Alternate Collating Sequence per index
There can be only one ACS on a given index.
-3056: Add Nullable column in legacy table
Cannot create true null column in a legacy table.
-3057: Conflicting collation
There are attributes of the Column Collating Sequence that conflict with the column definition.
-3058: Drop last column
Cannot drop the last column of a table. A table must contain at least one column.
-3059: Database could not find dictionary files
The dictionary files for the specified database could not be found. Make sure the dictionary files exist and are in the proper directory.
-3060: Constraint already exists
The specified constraint name already exists.
-3061: Invalid constraint name
While creating a column constraint name, the constraint name was too long, null, or had an invalid character.
-3062: Database has no security
You tried to set security privileges on a database that was not marked secure. First, enable security on the database.
-3063: Database already secured
You cannot secure a database that has already been secured.
-3064: Alter legacy table
Cannot perform an alter table on a legacy table.
-3065: Invalid login
Either an invalid user name was used or the password failed. Make sure you are using the proper login information. If you continue to have problems, check with your system administrator.
-3066: Group not found
A group with the specified group name does not exist. Specify a valid group name. If you continue to have problems, check with your system administrator.
-3067: Group not empty
A group may not be deleted if there are still valid users in that group. Remove any user names before deleting the group.
-3068: Not allowed to define synonym for Public
Public is a default group and you are not allowed to change or add a synonym for the Public group.
-3069: Not allowed to drop Public
Public is a default group and cannot be dropped from the list of groups.
-3070: Not allowed to drop Administrator
Administrator is a default user and cannot be dropped from the list of users.
-3071: Cannot revoke synonym privileges
You cannot revoke privileges to a synonym; you must revoke privileges to the group the synonym refers to.
-3072: Cannot grant synonym privileges
You cannot grant privileges to a synonym; you must grant privileges to the group to which the synonym refers.
-3073: Privileges cannot be revoked from Administrator
Administrator is a default user and you cannot revoke privileges from the Administrator user name.
-3075: Conversion rename error
While converting a database, a file could not be renamed.
-3076: Conversion delete error
While converting a database, a file could not be deleted.
-3077: Bad index name
The index name is either too long or null.
-3078: Bad column name
The column name is either too long or null.
-3079: Bad table name
The table name is either too long or null.
-3080: Data not bound
You cannot bind a database that is already bound. A database can be bound only once.
-3081: Wrong DDF bind information
The binding information does not match the information specified in the Data Dictionary Files.
-3082: DDF already bound
You cannot bind a Data Dictionary File that is already bound.
-3083: DDF not bound
You cannot unbind a Data Dictionary File that is not bound.
-3084: Shared DDF
You cannot bind a database that uses shared Data Dictionary Files.
-3085: Shared data file
You cannot bind a database that uses shared data files.
-3086: Index in use by primary key
You cannot drop the index because it is referenced by a primary key.
-3087: Primary key already exists
The table already has a primary key defined. You must delete the existing primary key and recreate it.
-3088: Incompatible file version
The file specified uses data file format v6.x or before and must be migrated to the current version of data file format before it can be used. Use Rebuild utility to migrate file versions.
-3089: Inconsistent multipath
A foreign key cannot reference the table it is in.
-3090: Delete connected cycle
While defining a foreign key, there was a foreign key delete rule violation.
-3091: Self referencing delete not cascade
Starting with PSQL v11 SP3, this code is obsolete. A restriction on a self-referencing table can be either cascade or restrict.
You must have a delete cascade defined in the foreign key to be able to do a self-referencing delete.
-3092: RI synchronization
The binding information in the Data Dictionary File and data files does not match.
-3093: Trigger RI conflict
If a delete trigger exists on the table, a delete cascade in a foreign key is not allowed.
-3094: Invalid delete rule
Delete name rules or attributes are not valid.
-3095: Invalid update rule
Update name rules or attributes are not valid.
-3096: Object in use
Cannot delete a stored procedure, trigger or view while in use.
-3097: Invalid collate
The collating sequence has a bad name, cannot be used, or may be corrupt.
-3098: Number out of range
The range for the specified number is invalid. Check the range for the option specified and enter a correct number.
-3099: Foreign key invalid database name
While creating a foreign key, the database name specified is either too long or it is null.
-3358: Not allowed to unbind database and change data locations at the same time
See 2342: Not allowed to unbind database and change data locations at the same time.
-3359: Not allowed to bind database and change data locations at the same time
See 2341: Not allowed to bind database and change data locations at the same time.
-3360: Not allowed to create data dictionary and unbind database at the same time
See 2340: Not allowed to create data dictionary and unbind database at the same time.
-3362: Not allowed to change the dictionary location and create dictionary files at the same time
See 2338: Not allowed to change the dictionary location and create dictionary files at the same time.
-3363: Not allowed to change data dictionary location and unbind database at the same time
See 2337: Not allowed to change data dictionary location and unbind database at the same time.
-3364: Not allowed to change data dictionary location and bind database at the same time
See 2336: Not allowed to change data dictionary location and bind database at the same time.
-3365: Not allowed to change data locations and change name at the same time
See 2335: Not allowed to change data locations and change name at the same time.
-3366: Not allowed to create a data dictionary files and change name at the same time
See 2334: Not allowed to create a data dictionary files and change name at the same time.
-3367: Not allowed to unbind database and change name at the same time
See 2333: Not allowed to unbind database and change name at the same time.
-3368: Not allowed to bind database and change name at the same time
See 2332: Not allowed to bind database and change name at the same time.
-3369: Not allowed to change data dictionary location and change name at the same time
See 2331: Not allowed to change data dictionary location and change name at the same time.
-3370: Data file for a table is bound, but does not need to be bound
See 2330: Data file for a table is bound, but does not need to be bound.
-3371: Data file for a table is not bound
See 2329: Data file for a table is not bound.
-3374: Data dictionary files are bound, but do not need to be bound
See 2326: Data dictionary files are bound, but do not need to be bound.
-3375: Data dictionary files are already bound
See 2325: Data dictionary files are already bound.
-3376: Data dictionary files are not bound
See 2324: Data dictionary files are not bound.
-3383: Cannot create DDF files for the bound database
See 2316: Cannot create DDF files for the bound database.
-3385: Cannot create DBNAMES.CFG file
See 2314: Cannot create DBNAMES.CFG file.
-3386: The bound database cannot share data dictionary files
See 2313: The bound database cannot share data dictionary files.
-3387: The bound database cannot share table data files
See 2312: The bound database cannot share table data files.
-3390: The database is in use
See 2309: The database is in use.
-3391: The specified RI flag is invalid
See 2308: The specified RI flag is invalid.
-3392: Cannot open DBNAMES.CFG file
See 2307: Cannot open DBNAMES.CFG file.
-3393: DBNAMES.CFG could not be updated
See 2306: DBNAMES.CFG could not be updated.
-3394: The specified path for data dictionary or data file locations is invalid
See 2305: The specified path for data dictionary or data file locations is invalid.
-3395: The database type is invalid
See 2304: The database type is invalid.
-3396: The database name must be unique; the specified database name already exists
See 2303: The database name must be unique; the specified database name already exists.
-3397: Invalid buffer length
See 2302: Invalid buffer length.
-3398: The database name is invalid
See 2301: The database name is invalid.
-3399: No more database names are defined
See 2300: No more database names are defined.
-3401: Invalid column-level GRANT statement
You receive this status code when you attempt to make a column-level GRANT statement for a right that is not supported. Only SELECT, INSERT and UPDATE are valid column level rights.
In SQL Engine Reference, see GRANT for more information about valid syntax.
-3473: The PSQL Network Services Layer was unable to resolve the given file name into a valid path
See 3126: The PSQL Network Services Layer was unable to resolve the given file name into a valid path.
-3475: PSQL Network Services Layer task table is full
See 3124: PSQL Network Services Layer task table is full.
-3480: No authentication context is available
See 3119: No authentication context is available.
-3484: PSQL Network Services Layer encountered a transport failure
See 3115: PSQL Network Services Layer encountered a transport failure.
-3485: The routing table of the PSQL Network Services Layer is full
See 3114: The routing table of the PSQL Network Services Layer is full.
-3487: Failure during receive from the target server
See 3112: Failure during receive from the target server.
-3488: Failure during send to the target server
See 3111: Failure during send to the target server.
-3489: The network layer is not connected
See 3110: The network layer is not connected.
-3491: The PSQL Network Services Layer detected an invalid session
See 3108: The PSQL Network Services Layer detected an invalid session.
-3492: The PSQL Network Services Layer is out of memory
See 3107: The PSQL Network Services Layer is out of memory.
-3493: The PSQL Network Services Layer encountered a connection failure
See 3106: The PSQL Network Services Layer encountered a connection failure.
-3494: No available transport protocol for the PSQL Network Services Layer
See 3105: No available transport protocol for the PSQL Network Services Layer.
-3495: The PSQL Network Services Layer encountered a permission error
See 3104: The PSQL Network Services Layer encountered a permission error.
-3496: Server name not found by PSQL Network Services Layer
See 3103: Server name not found by PSQL Network Services Layer.
-3777: The MicroKernel router could not send the request to the remote engine because the specified data buffer length resulted in a data packet object that is too large
See 3022: The MicroKernel router could not send the request to the remote engine because the specified data buffer length resulted in a data packet object that is too large.
-3778: The MicroKernel router received a badly formatted data packet
See 3021: The MicroKernel router received a badly formatted data packet.
-3779: An error occurred while loading the MicroKernel
See 3020: An error occurred while loading the MicroKernel.
-3780: The MicroKernel router encountered a semaphore error
See 3019: The MicroKernel router encountered a semaphore error.
-3781: The file is already closed
See 3018: The file is already closed.
-3782: Data buffer of the local engine is too small
See 3017: Data buffer of the local engine is too small.
-3783: The MicroKernel router encountered an internal error
See 3016: The MicroKernel router encountered an internal error.
-3784: The MicroKernel router encountered an initialization error
See 3015: The MicroKernel router encountered an initialization error.
-3785: The MicroKernel router cannot find an engine
See 3014: The MicroKernel router cannot find an engine.
-3786: The remote engine is inaccessible to the MicroKernel router because the networking component is not loaded
See 3013: The remote engine is inaccessible to the MicroKernel router because the networking component is not loaded.
-3787: Local engine is not accessible to the MicroKernel router
See 3012: Local engine is not accessible to the MicroKernel router.
-3790: NETinterface.DLL is not loaded
See 3009: NETinterface.DLL is not loaded.
-3791: Invalid configuration for MicroKernel router
See 3008: Invalid configuration for MicroKernel router.
-3793: The MicroKernel router detected an invalid session
See 3006: The MicroKernel router detected an invalid session.
-3794: The MicroKernel router encountered an operating system error
See 3005: The MicroKernel router encountered an operating system error.
-3795: The MicroKernel is not responding to the MicroKernel router
See 3004: The MicroKernel is not responding to the MicroKernel router.
-3796: The MicroKernel router detected an incompatible network component
See 3003: The MicroKernel router detected an incompatible network component.
-3797: The MicroKernel router resource DLL is unavailable
See 3002: The MicroKernel router resource DLL is unavailable.
-3798: Local access is unavailable to the MicroKernel router
See 3001: Local access is unavailable to the MicroKernel router.
-3799: The MicroKernel router encountered a memory allocation error
See 3000: The MicroKernel router encountered a memory allocation error.
-4001: No relational operator found in the specified push-down filter
COBOL applications that include OCCURS, partial REDEFINES, or variable record layout can enable SQL access to the Btrieve data files by using the Cobolschemaexec utility. (The utility describes the application’s understanding of data to the PSQL Relational Engine.) A table can contain a logical expression associated with the table. Such a table filter is referred to as a “push-down filter.”
If you specify a push-down filter, you must also specify a relational operator for the filter (such as equals, greater than, less than, and so forth).
-4002: Specified push-down filter field not found in the table
COBOL applications that include OCCURS, partial REDEFINES, or variable record layout can enable SQL access to the Btrieve data files by using the Cobolschemaexec utility. (The utility describes the application’s understanding of data to the PSQL Relational Engine.) A table can contain a logical expression associated with the table. Such a table filter is referred to as a “push-down filter.”
If you specify a push-down filter for a column, the column must be in the table with which the filter is associated.
-4003: The push-down filter specified contains invalid relational operator
COBOL applications that include OCCURS, partial REDEFINES, or variable record layout can enable SQL access to the Btrieve data files by using the Cobolschemaexec utility. (The utility describes the application’s understanding of data to the PSQL Relational Engine.) A table can contain a logical expression associated with the table. Such a table filter is referred to as a “push-down filter.”
If you specify a push-down filter, you must also specify a valid relational operator for the filter. Valid operators include less than, greater than, equal to, less than or equal to, greater than or equal to, and not equal to.
-4837: The client table is full
See 162: The client table is full.
-4838: A key has reached a maximum limit for user count, session count, or data in use, or has changed state to expired or disabled.
See 161: A key has reached a maximum limit for user count, session count, or data in use, or has changed state to expired or disabled
-4850: SQL Trigger
See 149: SQL Trigger.
-4851: A roll forward error occurred
See 148: A roll forward error occurred.
-4852: The log segment is missing
See 147: The log segment is missing.
-4853: Duplicate sys key
See 146: Duplicate system key.
-4856: The MicroKernel cannot allow unauthorized access to files in a secure MicroKernel database
See 143: The MicroKernel cannot allow unauthorized access to files in a secure MicroKernel database.
-4860: The MicroKernel has detected an unacceptable value in the key number
See 139: The MicroKernel has detected an unacceptable value in the key number.
-4861: The NULL indicator position is invalid
See 138: The NULL indicator position is invalid.
-4863: The MicroKernel cannot find the specified Alternate Collating Sequence in the file
See 136: The MicroKernel cannot find the specified Alternate Collating Sequence in the file.
-4864: The specified ISR table is corrupt or otherwise invalid
See 135: The specified ISR table is corrupt or otherwise invalid.
-4865: The MicroKernel cannot read the International Sorting Rule
See 134: The MicroKernel cannot read the International Sorting Rule.
-4866: More than 5 concurrent users attempted to access the same data file
See 133: More than 5 concurrent users attempted to access the same data file.
-4867: The file has reached its size limit
See 132: The file has reached its size limit.
-4869: The MicroKernel ran out of system locks
See 130: The MicroKernel ran out of system locks.
-4884: The file is owned by another MicroKernel engine acting as a Gateway
See 116: The file is owned by another MicroKernel engine acting as a Gateway.
-4885: The MicroKernel cannot access the archival logging dump file
See 115: The MicroKernel cannot access the archival logging dump file.
-4886: The archival log for the specified file is invalid
See 114: The archival log for the specified file is invalid.
-4887: The MicroKernel cannot find the archival log for the specified file
See 113: The MicroKernel is unable to open the archival log for the specified file.
-4888: The specified file is in use by another client
See 112: The specified file is in use by another client.
-4889: The specified file name was not found in the archival logging configuration file
See 111: The specified file name was not found in the archival logging configuration file.
-4890: The MicroKernel cannot access the archival logging configuration file
See 110: The MicroKernel cannot access the archival logging configuration file.
-4891: An unknown error was encountered either creating or accessing a semaphore
See 109: An unknown error was encountered either creating or accessing a semaphore.
-4892: The application attempted to perform a chunk operation on a pre-v6.0 file
See 107: The application attempted to perform a chunk operation on a pre-v6.0 file.
-4893: The MicroKernel cannot perform a Get Next Chunk operation
See 106: The MicroKernel cannot perform a Get Next Chunk operation.
-4894: The file cannot be created with Variable-tail Allocation Tables (VATs)
See 105: The file cannot be created with Variable-tail Allocation Tables (VATs).
-4895: The MicroKernel does not recognize the locale
See 104: The MicroKernel does not recognize the locale.
-4896: The chunk offset is too big
See 103: The chunk offset is too big.
-4897: Insufficient stack space is available
See 102: Insufficient stack space is available.
-4898: Insufficient operating system memory is available
See 101: Insufficient operating system memory is available.
-4899: No cache buffers are available
See 100: No cache buffers are available.
-4902: The data buffer is too small
See 97: The data buffer is too small.
-4903: A communications environment error occurred
See 96: A communications environment error occurred.
-4904: The session is no longer valid
See 95: The session is no longer valid.
-4905: The application encountered a permission error
See 94: The application encountered a permission error.
-4906: The record lock types are incompatible
See 93: The record lock types are incompatible.
-4907: The transaction table is full
See 92: The transaction table is full.
-4908: The application encountered a server error
See 91: The application encountered a server error.
-4909: The redirected device table is full
See 90: The redirected device table is full.
-4910: A name error occurred
See 89: A name error occurred.
-4911: The application encountered an incompatible mode error
See 88: The application encountered an incompatible mode error.
-4912: The handle table is full
See 87: The handle table is full.
-4913: The file table is full
See 86: The file table is full.
-4914: File is locked
See 85: The file is locked.
-4915: Record is locked
See 84: The record or page is locked.
-4916: The MicroKernel attempted to update or delete a record that was read outside the transaction
See 83: The MicroKernel attempted to update or delete a record that was read outside the transaction.
-4917: The MicroKernel lost positioning
See 82: The MicroKernel lost positioning.
-4918: The MicroKernel encountered a lock error
See 81: The MicroKernel encountered a lock error.
-4919: The MicroKernel encountered a record-level conflict
See 80: The MicroKernel encountered a record-level conflict.
-4920: A programming error occurred
See 79: A programming error occurred.
-4921: The MicroKernel detected a deadlock condition
See 78: The MicroKernel detected a deadlock condition.
-4922: The application encountered a wait error
See 77: The application encountered a wait error.
-4923: There is a conflict on the referenced file
See 76: There is a conflict on the referenced file.
-4926: The RI definition is out of sync
See 73: The RI definition is out of sync.
-4927: The MicroKernel cannot open the RI referenced file
See 72: The MicroKernel cannot open the RI referenced file.
-4928: There is a violation of the RI definitions
See 71: There is a violation of the RI definitions.
-4930: The Delete operation specified a file that is damaged
See 69: The Delete operation specified a file that is damaged.
-4931 The MicroKernel cannot perform the RI Delete Cascade operation
See 68: The MicroKernel cannot perform the RI Delete Cascade operation.
-4932: The MicroKernel cannot open the SQL data dictionary files
See 67: The MicroKernel cannot open the SQL data dictionary files.
-4933: The maximum number of open databases has been exceeded
See 66: The maximum number of open databases has been exceeded.
-4934: The field offset is incorrect
See 65: The field offset is incorrect.
-4935: The filter limit has been reached
See 64: The filter limit has been reached.
-4936: The data buffer parameter specified on an Insert Extended operation is invalid
See 63: The data buffer parameter specified on an Insert Extended operation is invalid.
-4937: The descriptor is incorrect
See 62: The descriptor is incorrect.
-4938: The work space is too small
See 61: The work space is too small.
-4939: The specified reject count has been reached
See 60: The specified reject count has been reached.
-4940: The specified file already exists
See 59: The specified file already exists.
-4941: The compression buffer length is too short
See 58: The compression buffer length is too short.
-4942: An expanded memory error occurred
See 57: An expanded memory error occurred.
-4943: An index is incomplete
See 56: An index is incomplete.
-4944: The application specified an invalid attribute for an AUTOINCREMENT key
See 55: The application specified an invalid attribute for an AUTOINCREMENT key.
-4945: The variable-length portion of the record is corrupt
See 54: The variable-length portion of the record is corrupt.
-4946: The language interface version is invalid
See 53: The language interface version is invalid.
-4947: An error occurred while writing to the cache
See 52: An error occurred while writing to the cache.
-4948: The owner name is invalid
See 51: The owner name is invalid.
-4949: The file owner is already set
See 50: The file owner is already set.
-4950: The extended key type is invalid
See 49: The extended key type is invalid.
-4951: The alternate collating sequence definition is invalid
See 48: The alternate collating sequence definition is invalid.
-4952: The number of files opened exceeds the maximum allowed
See 47: The number of files opened exceeds the maximum allowed.
-4953: Access to the requested file is denied
See 46: Access to the requested file is denied.
-4954: The specified key flags are invalid
See 45: The specified key flags are invalid.
-4955: The specified key path is invalid
See 44: The specified key path is invalid.
-4956: The specified record address is invalid
See 43: The specified record address is invalid.
-4957: A file previously opened in Accelerated mode was not closed
See 42: A file previously opened in Accelerated mode was not closed.
-4958: The MicroKernel does not allow the attempted operation
See 41: The MicroKernel does not allow the attempted operation.
-4959: The file access request exceeds the maximum number of files allowed
See 40: The file access request exceeds the maximum number of files allowed.
-4960: A Begin Transaction operation must precede an End/Abort Transaction operation
See 39: A Begin Transaction operation must precede an End/Abort Transaction operation.
-4961: The MicroKernel encountered a transaction control file I/O error
See 38: The MicroKernel encountered a transaction control file I/O error.
-4962: Another transaction is active
See 37: Another transaction is active.
-4964: The application encountered a directory error
See 35: The application encountered a directory error.
-4965: The specified extension name is invalid
See 34: The specified extension name is invalid.
-4966: The MicroKernel cannot unload
See 33: The MicroKernel cannot unload.
-4967: The file cannot be extended
See 32: The file cannot be extended.
-4968: The file is already extended
See 31: The file is already extended.
-4969: The file specified is not a MicroKernel file
See 30: The file specified is not a MicroKernel file.
-4970: The key length is invalid
See 29: The key length is invalid.
-4971: The record length is invalid
See 28: The record length is invalid.
-4972: The key position is invalid
See 27: The key position is invalid.
-4973: The number of keys specified is invalid
See 26: The number of keys specified is invalid.
-4974: The application cannot create the specified file
See 25: The application cannot create the specified file.
-4975: The page size or data buffer size is invalid
See 24: The page size or data buffer size is invalid.
-4976: The position block parameter is not 128 bytes long
See 23: The position block parameter is not 128 bytes long.
-4977: The data buffer parameter is too short
See 22: The data buffer parameter is too short.
-4978: The key buffer parameter is too short
See 21: The key buffer parameter is too short.
-4979: The MicroKernel or Btrieve Requester is inactive
See 20: The MicroKernel or Btrieve Requester is inactive.
-4980: The application encountered an unrecoverable error
See 19: The application encountered an unrecoverable error.
-4981: The disk is full
See 18: The disk is full.
-4983: The application encountered an expansion error
See 16: The application encountered an expansion error.
-4984: The application encountered an I/O error during pre-imaging
See 15: The application encountered an I/O error during pre-imaging.
-4985: The MicroKernel cannot create or open the pre-image file
See 14: The MicroKernel cannot create or open the pre-image file.
-4986: The MicroKernel could not open the extension file for an extended file
See 13: The MicroKernel could not open the extension file for an extended file.
-4987: The MicroKernel cannot find the specified file
See 12: The MicroKernel cannot find the specified file.
-4988: The specified file name is invalid
See 11: The specified file name is invalid.
-4989: The key field is not modifiable
See 10: The key field is not modifiable.
-4990: The operation encountered the end-of-file
See 9: The operation encountered the end-of-file.
-4991: The current positioning is invalid
See 8: The current positioning is invalid.
-4992: The key number has changed
See 7: The key number has changed.
-4993: The key number parameter is invalid
See 6: The key number parameter is invalid.
-4994: The record has a key field containing a duplicate value
You attempted to create a stored procedure with the same name as an existing stored procedure. Follow these steps to recover:
1
2
3
Also see 5: The record has a key field containing a duplicate key value
-4995: The application cannot find the key value
See 4: The application cannot find the key value.
-4996: The file is not open
See 3: The file is not open.
-4997: The application encountered an I/O error
See 2: The application encountered an I/O error.
-4998: The operation parameter is invalid
See 1: The operation parameter is invalid.
-5022: Columns in the selection list and the returns clause do not match
The number and type of columns specified in the selection list must match the number and type of columns in the RETURNS clause. For example, the following code returns error -5022 because the RETURNS clause specifies one column but the SELECT list contains two columns:
CREATE PROCEDURE p1 () RETURNS (c INTEGER) AS SELECT c1, c2 FROM t1;
CALL p1()
-5025: Only IN parameter types allowed for user-defined functions
A user-defined function (UDF) allows only IN parameters. Parameters of type OUT and INOUT are not allowed. For example, the following code returns an error because parameter “a” is designated as “out”:
CREATE FUNCTION myfunc(OUT :a INTEGER)
RETURNS INTEGER
AS
BEGIN
   RETURN 1;
END;
-5027: Invalid Syntax. The last statement included within a function must be a return statement
A user-defined function (UDF) must contain a RETURN statement as the last statement in the function definition.
-5031: Default value cannot have the same UDF name as the UDF being created
The name of a user-defined function (UDF) default parameter cannot be the same name as the UDF itself. For example, the following code is incorrect because both the UDF name and the parameter name are “myfunc”:
CREATE FUNCTION myfunc(:a INT DEFAULT myfunc(1)) RETURNS INTEGER
AS
BEGIN
RETURN :a;
END;
-5032: RETURN statements in a UDF must have an argument
The RETURN statement within a user-defined function (UDF) must specify an argument because a UDF always returns a value.
-5099: Error condition pertaining to a stored procedure
The stored procedure returned one of the following error conditions:
-5202: Record is locked
An attempt was made to access a record that is locked by another user. Wait until the record is unlocked and try again.
-5204: Table is not open
The MicroKernel was unable to open the table. Make sure you have the proper access rights and table privileges.
-5208: Invalid date
The format used for the date is incorrect. Check for the correct ODBC date format and try again.
-5219: Translation failed
The ODBC driver failed to translate the data between the data source and the application. Check if the application is using SQLSetConnectOption to override the default translation dll.
-5220: Invalid procedure name
The specified procedure name does not exist. Check the name of the procedure called and try again.
-5221: Invalid predicate name
The ODBC driver does not support this predicate. Consult the SQL Engine Reference for valid predicates.
-5222: Invalid Code Page value
The code page value in the ODBC configuration file is invalid. Refer to the Advanced Operations Guide for valid configuration settings.
-5223: User-defined function name cannot be same as built-in function name
The name of a user-defined function (UDF) cannot be same as the name of a pre-defined scalar function. For a discussion of the scalar functions, see Scalar Functions in SQL Engine Reference.
-5225: Cannot drop an in-built function or an aggregate function
You cannot delete an aggregate function or a pre-defined scalar function. The aggregate functions include COUNT, AVG, SUM, MAX, MIN, and DISTINCT. For a discussion of the scalar functions, see Scalar Functions in SQL Engine Reference.
-5226: Cannot invoke a user-defined function using CALL statement
You cannot invoke a user-defined function (UDF) with a CALL statement. You must use a SELECT statement to invoke a UDF.
-5229: Invalid user-defined or scalar function
The name you specified for a user-defined function (UDF) does not exists in the dictionary. Specify the name of an existing UDF and try the operation again.
-5230: No such stored procedure
The name you specified for a stored procedure does not exists in the dictionary. Specify the name of an existing stored procedure and try the operation again.
-5231: Stored procedure already exists
The name that you specified for a stored procedure already exists in the dictionary. Specify another name or remove the current stored procedure definition and try the operation again.
-5232: UDF already exists
The name that you specified for a user-defined function (UDF) already exists in the dictionary. Specify another name or remove the current UDF definition and try the operation again.
-5233: Only database qualifier is allowed
Tables, views, procedures, and functions can be associated with databases only. Triggers, indexes, and columns can be associated with databases and tables. The following statement is permissible because the database name and table name may be used to qualify an index name: alter index rename database1:table1:index1 to index2. However, the following statement causes an error because a view name can be qualified only with a database name: alter view rename database1:table1:view1 to view2. A permissible statement is alter view rename database1:view1 to view2 or alter view rename view1 to view2.
-5243: Specified column number is not valid
The PSQL_MOVE keyword (used with ALTER TABLE) must specify a column location greater than zero but less than the total number of columns. For example, assume that table t1 has only two columns, col1 and col2. Both of the following statement return an error:
ALTER TABLE t1 PSQL_MOVE col1 to 0
ALTER TABLE t1 PSQL_MOVE col1 to 3
The first statement attempts to move the column to position zero. The second statements attempts to move the column to position three, which is a number greater than the total number of columns (two).
-5245: Procedure/view permissions not supported on this metadata version
Permissions on views and stored procedures are permissible only on databases with V2 metadata.
-5247: This feature is not supported for the current metadata version
Certain functionality, such as trusted and non-trusted views and stored procedures, are permissible only on databases with V2 metadata.
-5248: Invalid partial column
The last (or the only) column in a partial index is not of data type CHAR or VARCHAR.