Esri ArcObjects Error Number '-2147155646': Invalid Attribute Names

Liz Sanderson
Liz Sanderson
  • Updated

Symptom

A translation may receive the error below when attempting to create a new table in an Esri ArcSDE Geodatabase:

2011-12-13 16:01:01| 2.2| 0.0|ERROR |An error occurred while attempting to create the feature class 'FEATURECLASSNAME'. The error number from ArcObjects is: '-2147155646'. The error message from ArcObjects is: {DBMS table not found[ORA-00942: table or view does not exist][DBO.XYZZY][STATE_ID = 0]}

or

 An error occurred while attempting to open an insert cursor on the table. The error number from ArcObjects is: '-2147220985'. The error message from ArcObjects is: {An invalid SQL statement was used.} 

or

 Cannot create a table with a duplicate column.

or

 Provider error `(156) Incorrect syntax near the keyword 'AND'

 

Cause

This error occurs when you are attempting to create a table and it has invalid attribute names - such as names starting with numeric characters (e.g. 0to2age) or names that are reserved words such as LONG, PRIMARY or DATE.

There are strict limitations to what characters you can use in an ESRI geodatabase table name.

The short summary is:

• Eliminate any characters that are not alphanumeric character (A-Z, 0-9) or an underscore (_).
• Do not start field or table names with an underscore or a number.

Check this ESRI FAQ: What characters should not be used in ArcGIS for field names and
table names?
http://support.esri.com/en/knowledgebase/techarticles/detail/23087

Esri Geodatabases also cannot use reserved words as attribute names in a feature class. Examples include:

 ADD, GROUP, INSERT, NULL... 

If you are translating data from SHAPE, Personal Geodatabase or File Geodatabase the attribute names may be valid in these formats because they are based on different underlying formats. The rules for attribute names are controlled by the underlying database and can be different for each Geodatabase.

Please see this article for a complete list of reserved words for a File Geodatabase: Reserved Words. Other reserved word lists are available for Oracle, SQL Server, IBM DB2, PostgreSQL, and Informix

 

Resolution

To resolve the issue examine the list of attribute names carefully and replace any that look like they could be causing a problem. Also use the ArcGIS tools to attempt to build the table and see which attribute names it doesn't accept.

More information on finding ArcObjects error numbers can be found in Interpreting ArcObjects error codes

 

Was this article helpful?

Comments

0 comments

Please sign in to leave a comment.