Error: Getting below error when attempted to load a shapefile in the database via SDE using ArcCatalog:-
Failed to convert E:\point\county_map.shp.ERROR 999999: Error executing function. A locator with this name does not exist. |
Environment: Oracle 10g (10.2.0.3) 32 bit, Windows 2003, ArcSDE9.2, ArcCatalog 9.2
Problem: When doing multiple attempts to load [and delete]shapefile(s) as feature class in the database, SDE doesn't clean it up when thefeature class(es) are deleted, hence some orphaned records were left behind inthe SDE repository. Hence it throws the error when attempted to load a shapefilein the same feature name. Its basically a constraint violation (CONSTRAINT_NAME='GDB_OC_UC'),but the error message that ArcCatalog throws is irrelevant and could divert fromcorrectly troubleshooting it.Solution: Consult with DBA before doing it, you are about tomodify SDE repository table(s), it is very risky to perform it without properknowledge, it might screw up your whole database. To be on a safer side, backupthe modifying tables or whole SDE schema before attempting to do so.
Connect in SQL*Plus as SDE user and perform the following:-
| SQL> conn sde/****@db1 SQL> select TABLE_NAME from user_constraints where CONSTRAINT_NAME='GDB_OC_UC'; TABLE_NAME ------------------------------ GDB_OBJECTCLASSES SQL> select NAME from sde.GDB_OBJECTCLASSES > where upper(NAME) = 'COUNTY_MAP' > and owner = 'MAP_OWNER'; NAME ------------------------------ county_map SQL> delete from sde.GDB_OBJECTCLASSES where NAME='county_map'; 1 row deleted. SQL> commit; Commit complete. |
Now, the load of shapefile went smooth, like a baby's but.