Error Opening Feature Class. The SQL statement was not a select statement

Last Published: April 25, 2020

Error Message

** Internal Publish Only! This article may contain information that is not intended for external circulation. **

After upgrading ArcSDE (SQL Server) from 8.3 to 9.0 users can no longer preview data in ArcCatalog or ArcMap, or view feature class or table properties.
Viewing properties fails with no error message.Previewing data fails with the message:"Error Opening Feature Class. The SQL statement was not a select statement"


This error is caused by a corrupt or empty SDE_column_registry table. This table is created during the upgrade from 8.3 to 9.0 and is queried when data is previewed or layer/table properties are accessed.

It is possible that the user's initial upgrade from ArcSDE 8.3 to ArcSDE 9.0 failed with messages indicating that feature classes or tables were missing. The upgrade does not complete properly if there are records in SDE_table_registry, SDE_geometry_columns, or SDE_layers that point to non-existant tables. If tables have been improperly deleted, orphaned records may exist in the SDE repository tables.

If the user corrects these inconsistencies and again executes the upgrade, either using the Post-Installation Setup or the sdesetupmssql command, the repository upgrade completes successfully. However, in some cases the SDE_column_registry table created during the first upgrade attempt is not correctly populated during the second upgrade attempt.

Solution or Workaround

To correct this problem, manually delete the SDE_column_registry table and run the upgrade again.

  1. Using the Enterprise Manager
    Navigate to the SDE database and delete the SDE_column_registry table.

    Using the Query Analyzer
    Connect as either the sde user or a sysadmin. Execute the following statements:

    use sde
    drop table sde.sde_column_registry
  2. Re-execute the repository upgrade.

    Using the Post-Installer
    Select a custom setup and select only the 'Repository Setup' option. Proceed through the setup instructions.

    Using the sdesetupmssql command
    Execute the following:

    sdesetupmssql -o upgrade -D sde -s <datasource>

    Optionally provide sysadmin user name and password.
  3. Using the Enterprise Manager or Query Analyzer check to see that the SDE_column_registry table was recreated and correctly populated. There should be a record for each column of each registered table or feature class.

Article ID:000006965

  • Legacy Products

Get help from ArcGIS experts

Contact technical support

Download the Esri Support App

Go to download options

Discover more on this topic