Article ID: 117900 - View products that this article applies to.
This article was previously published under Q117900
The following is a list of reserved error codes that may be returned by the new Microsoft Access version 2.0 Jet engine that Visual Basic can now use if you have installed the Jet 2.0/Visual Basic 3.0 Compatibility Layer.
The reserved error numbers listed here are not Visual Basic error codes. They are unmapped Jet 2.0 errors that are exposed only as "Reserved Errors" in Visual Basic. In a future version of Visual Basic, many of these Jet 2.0 errors will be mapped to Visual Basic error codes.
Because these reserved error numbers are subject to change, developers should not rely on them being the same and should be ready to update the error-trapping routines when the next version of Visual Basic is released.
With each of the Jet version 2.0 error numbers listed below, you'll find a brief error string that appears when the error is viewed in Microsoft Access version 2.0. Only the message "Reserved Error" appears when the same error appears in Visual Basic.
When an error from the Jet 2.0 engine occurs, calling the ERR statement will return 3000 for the error number. You can get the actual reserved error by looking at the results returned by ERROR$.
NOTE: There are pipe characters (|) throughout these strings that act as placeholders for context information such as column names, table names, and so forth that would be filled in at the time of the error.
In the Microsoft Access Online Help file, use the following steps to find more detailed information about each of the error strings and what they mean when applied to Microsoft Access:
-1010 Invalid database ID. -1016 Can't have more than 10 fields in an index. -1029 Database engine hasn't been initialized. -1030 Database engine has already been initialized. -1034 Query support unavailable. -1046 Can't delete a field that is part of an index. -1051 Can't delete this index. It is either the current index or is used in a relationship. -1062 Can't create database; Invalid locale. -1066 Can't create a relationship. -1068 Invalid referential integrity constraint. -1070 Can't find Installable ISAM. -1106 JET_errCommitConflict Read lock failed due to outstanding commit lock. -1209 The Jet database engine has encountered a problem in your database. To correct the problem, you must repair and compact the database. -1308 Can't define field or index in a table that contains data. -1309 Can't modify table structure. Another user has the table open. -1315 Can't change a rule while the rules for this table are in use. -1316 Object is invalid for operation. -1402 Primary key already exists. -1403 Index already exists. -1406 Invalid index definition. -1513 Can't create index on Memo field or OLE Object field. -1519 Can't delete this field. It's part of one or more relationships. -1523 Zero-length string is valid only in a text or Memo field. -1601 The key was not found. (JET_errRecordNotFound) -1802 Can't open |9 system database (typically SYSTEM.MDA). -1910 You must enter a personal identifier (PID) consisting of at least four and no more than 20 characters and digits. -1911 Account name already exists. -2030 There are several tables with that name. Please specify owner in the format 'owner.table'. -2031 Invalid connection string in pass-through query. -2032 Single-row update/delete affected more than one row of a remote table. Index specified as unique contains duplicate values. -2033 The server's MSysConf table exists, but is in an incorrect format. Contact your system administrator. -2034 You cannot use ODBC to attach an external Microsoft Access or ISAM database table to your database. -3028 Can't have action query as an input. -3031 Query does not return records. -3059 This query is not a properly formed data-definition query. -3060 No database specified in connection string or IN clause. -3063 At most one field can be returned from a subquery that doesn't use the EXISTS keyword. -3064 The number of columns in the two selected tables or queries of a union query don't match. -3066 Execute method must be used on action or data-definition queries. -3069 Pass-through query with ReturnsRecords property set to True did not return any records. -3070 At most one record can be returned by this subquery." -3071 Query is too complex. -3072 Unions not allowed in a subquery. -3073 Can't perform join, group, or sort. Combined fields are too long. -3077 Too many FastFind Sessions were invoked. -3520 Number of query values and destination fields aren't the same. -3530 Join expression not supported. -3531 Can be present only in version 1.0 format. -3532 Syntax error in union query. -3535 Pass-through query must contain at least one character. -3550 Syntax error in CONSTRAINT clause. -3551 Syntax error in CREATE TABLE statement. -3552 Syntax error in CREATE INDEX statement. -3553 Syntax error in field definition. -3554 Syntax error in ALTER TABLE statement. -3555 Syntax error in DROP INDEX statement. -3556 Syntax error in DROP TABLE statement. -3560 Relationship must be on the same number of fields with the same data types. -3561 Can't find field in index definition. -3601Property setting can't be larger than 2 KB. -3602 This property isn't supported for external data sources or for databases created in a previous version of |9. -3603 Property specified already exists. -3604 DeleteOnly called with non-zero cbData. -3605 An error has occurred. Properties were not saved. -3606 Can't save property; property is a schema property. -3700 Validation rules and default values can't be placed on system or attached tables. -3704 Can't place this validation expression on this field. -3708 Syntax error in default value. -5015 External table isn't in the expected format. -5016 Unexpected error from external database driver (|). -5017 Numeric field overflow. -5020 Paradox index is not primary. -5029 Can't open '|'. Another user has the table open using a different network control file or locking style. -5030 Can't open this Paradox 4.x table because ParadoxNetStyle is set to 3.x in |8. -5112 Format of memo file doesn't match specified external database format. -5210 Btrieve: Invalid IndexDDF option in |8. -5211 Invalid DataCodePage option in |8. -5212 Btrieve: Xtrieve options aren't correct in |8. -5213 Btrieve: Can't find file FIELD.DDF. -5214 Btrieve: Invalid IndexDeleteRenumber option in |8. -8056 No destination field name in INSERT statement (|). -8172 Top not allowed in delete queries. -8175 Crosstab query contains one or more invalid fixed column headings. -8176 Query '|' is corrupt. -8177 Invalid TOP argument in select query. -8178 This Recordset is not updatable. -8179 Field '|' is based on an expression and can't be edited. -8180 Table '|2' is read-only. -8181 Record in table '|' was deleted by another user. -8182 Record in table '|' is locked by another user. -8183 To make changes to this field, first save the record. -8184 Can't enter value into blank field on 'one' side of outer join. -8185 Records in table '|' would have no record on the 'one' side. -8186 Current field must match join key '|' on 'one' side of outer join. -8187 Invalid Memo or OLE object in subquery '|'. -8188 Unrecognized database format '|'. -8189 ORDER BY expression (|) uses non-output fields. -8190 Unknown or invalid reference '|1' in validation expression or default value in table '|2'. -8191 Unknown or invalid field reference '|'. -8192 Can't add record(s); primary key for table '|' not in recordset. -8193 Can't add record(s); join key of table '|' not in recordset. -8194 The database is opened by user '|2' on machine '|1'. You can't open this database exclusively. -8195 Record(s) can't be added; no corresponding record on the 'one' side. -8196 Can't use Memo or OLE object field '|' in SELECT clause of a union query. -8197 Unknown function '|2' in validation expression or default value on '|1'. -8220 Can't modify the design of table '|'. It's in a read-only database. -8221 Can't find table or constraint. -8222 No such index '|2' on table '|1'. -8223 Can't create relationship. Referenced table '|' doesn't have a primary key. -8224 The specified fields are not uniquely indexed in table '|'. -8225 Table '|1' already has an index named '|2' -8226 Table '|' doesn't exist. -8227 No such relationship '|2' on table '|1'. -8228 There is already a relationship named '|' in the current database. -8229 Can't create relationships to enforce referential integrity. Existing data in table '|2' violates referential integrity rules with related table '|1'. -8230 Field '|2' already exists in table '|1'. -8231 There is no field named '|2' in table '|1'. -8232 Field '|' size must be 1 to 255. -8233 Can't delete field '|'. It's part of one or more relationships. -8234 There is no primary key in table '|'. -8235 Invalid field name '|' in definition of index or relationship. -8260 | in table-level validation expression. -8261 Field '|' can't contain a null value. -8262 Field '|' can't be a zero-length string. -8263 This validation rule must be met. -8264 Can't perform cascading operation. Since related records exist in table '|', referential integrity rules would be violated. -8265 Can't perform cascading operation. There must be a related record in table '|'. -8266 Can't perform cascading operation. It would result in a null key in table '|'. -8267 Can't perform cascading operation. It would result in a duplicate key in table '|'. -8268 Can't perform cascading operation. It would result in two updates on field '|2' in table '|1'. -8269 Can't perform cascading operation. It would cause field '|' to become null, which is not allowed. -8270 Can't perform cascading operation. It would cause field '|' to become a zero-length string, which is not allowed. -8271 Can't perform cascading operation: '|' -8272 Invalid entry. Can't perform cascading operation specified in table '|1' because value entered is too big for field '|2'. -8273 Write conflict due to cascading -8274 Can't perform cascading update on table '|' because it is currently in use. -20000 Can't open this database for update. -30001 No fields defined - cannot append table. -30002 Name not found in this collection. -30003 Can't append. Field is part of a TableDefs collection. -30004 Property can be set only when the field is part of a Recordset object's Fields collection. -30005 Can't set this property once the object is part of a collection. -30006 Can't append. Index is part of a TableDefs collection. -30007 Property not found. -30008 Invalid property value. -30009 Object isn't a collection. -30010 Method not applicable for this object. -30011 Can't set this property for remote objects. -30012 Can't append a relation with no fields defined. -30013 Can't append. Object already in collection. -30014 Can't delete a built-in property. -30015 Property '|' must be set before using this method. -30016 User-defined properties don't support a Null value. -30017 Object is no longer valid. -30018 This method or property is not currently available on this Recordset. -30019 The action was canceled by an associated object. -30020 Error in DAO automation. -30021 Data type conversion error. -32020 Can't import table or query. No records found, or all records contain errors.
-8082 Expected '('
-8083 Expected ')'
Article ID: 117900 - Last Review: October 29, 2003 - Revision: 2.0