1

I have created a feature class in an Oracle 11g database connection with ArcCatalog 10.2 (without ArcSDE) and I can see the table in the database with Sql Developer without problems. But, if I drop this table with a sql statement in Sql Developer and then refresh the database connection in ArcCatalog, the feature class does not disappear (even if I create a new feature class with the same name, I have an Invalid name error because the name already exists).

I have tried the same scenario with a view, and there is no problem, ArcCatalog updates.

I could remove the feature class in ArcCatalog, but I need to use a stored procedure in the database to drop the table and after that refresh ArcCatalog.

Any ideas why ArcCatalog does not refresh?

  • If you created a feature class in Oracle using ArcGIS, you must have been using ArcSDE technology. It is unwise to use DROP TABLE on any table created by ArcGIS, because doing so corrupts your geodatabase. – Vince Dec 10 '15 at 14:26
2

It does not refresh since there is still a reference to this feature class in the geodatabase.

making changes to geodatabases is more complex than just dropping a table since it is part of the geodatabase 'format' rather than just pure SQL.

At minimum in addition to dropping the table, you would also need to check and remove its UUID from the GDB_Items table (holding list of all feature classes etc), also GDB_ItemRelationShips depending on the design of your geodatabase.

for more information on the design of the gdb, please see this link - https://desktop.arcgis.com/en/desktop/latest/manage-data/using-sql-with-gdbs/overview-geodatabase-system-tables.htm#GUID-9892ECE9-D9EA-47C7-AE41-C7318B5EA56C

I recommend that you look into the ESRI's APIs for making a script to do this rather than directly editing the SQL.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.