Hi there,
Having problems with getting spatial data out of an Oracle 19c database.
Reading the data in with the Check Geometry tool outputs the following errors;
Start Time: 29 July 2025 15:24:48
ERROR 999999: Something unexpected caused the tool to fail. Contact Esri Technical Support (http://esriurl.com/support) to Report a Bug, and refer to the error help for potential solutions or workarounds.
Wrong column type [Wrong column type]
Failed to execute (CheckGeometry).
Failed at 29 July 2025 15:25:14 (Elapsed Time: 26.41 seconds)
Trying to follow another report from the forums lead to a dead end Wrong Column Type
The questions asked by @VinceAngelo in that thread I've answered here:
Specific version Oracle: 19.27.0
Version ArcGIS Pro: 3.2.4
It is an enterprise geodatabase
How did we build the index:
CREATE INDEX "BLK"."GDW_BLK_INV_RD_IDX" ON "BLK"."GDW_BLK_INV_RD" ("GEOMETRY")
INDEXTYPE IS "MDSYS"."SPATIAL_INDEX" ;
How did we populate the metadata
insert into user_sdo_geom_metadata
using select 'GDW_BLK_AUT_VW', column_name, diminfo, srid
from all_sdo_geom_metadata
where owner = 'DINO_DBA' and table_name = 'GDW_BLK_AUT_RD';
Output of DESCRIBE for this table gives:
Name Null? Type
------------- -------- ------------------
AUTHORITY_DBK NOT NULL NUMBER(38)
AUTHORITY_CD VARCHAR2(100)
AUTHORITY_NM VARCHAR2(100)
WEBSITE_BLN VARCHAR2(1)
DOSSIER_BLN VARCHAR2(1)
DISPLAY_CD VARCHAR2(2)
WEBSITE_URL VARCHAR2(255)
GEOMETRY MDSYS.SDO_GEOMETRY
what column did you select as the rowid: error is in the Check Geometry function, not possible to specify a rowid, but this is in the layer declared as AUTHORITY_DBK
Solved! Go to Solution.
Hi @Joey_NL,
Thanks for the clarification.
You're right. sdelayer -o register comes from the old ArcSDE command-line tools (deprecated post-10.2). Since you're on 10.6.1 and using a user-schema geodatabase, you won’t have that utility and don’t need it.
Now, to your actual setup:
1. Geometry Checker should work — but only if:
All features have valid geometries (no NULL or corrupt shapes)
Geometry type is consistent (e.g., all polygons, no mix with points)
USER_SDO_GEOM_METADATA matches the data (SRID, extent, dimensions)
To verify, run:
SELECT COUNT(*) FROM your_table WHERE shape IS NULL;
SELECT SDO_GEOM.VALIDATE_GEOMETRY_WITH_CONTEXT(shape, 0.05) FROM your_table;
2. Views & registration limitations
Since it's a user-schema GDB and views can’t be registered in 10.6.1, ArcGIS won't fully understand the structure behind the scenes. That can trigger column mismatch or validation errors—even if the geometry looks fine in SQL.
Recommended test: Load a subset (say 100 features) into a scratch feature class via ArcMap. Run Geometry Checker on that. If it works, the issue is tied to schema interpretation or metadata—not the geometry itself.
Let me know if you want help building a SQL metadata checker for SRID + dimensionality.
Regards,
Venkat
Hi @Joey_NL,
This usually happens when ArcGIS expects a column to match a specific geometry or data type, but Oracle has it defined differently. Often due to manual schema edits or mismatched SDO_GEOMETRY settings.
Please check following items:
That your spatial column is of type SDO_GEOMETRY
The SRID and dimension info match what ArcGIS expects
That USER_SDO_GEOM_METADATA is properly populated
Re-register the table with the geodatabase using sdelayer -o register if needed, or use ArcGIS's Enable SQL Access tools to revalidate.
Regards,
Venkat
Hi there @VenkataKondepati ,
Thanks so much for your reply. To answer your question;
Thanks for providing the command sdelayer -o register but it's unclear what I should do with that? All I can find online points me to old ArcSDE documentation or forum posts from c.2010. Can you link to some help docs or any info on how/in what program I should call this command? That isn't a known utility in our database.
Either way, this is a v10.6.1 user-schema geodatabase that we cannot upgrade so we can't register (materialized) views, so that won't work. I would have expected the geometry checker to work regardless?
Hi @Joey_NL,
Thanks for the clarification.
You're right. sdelayer -o register comes from the old ArcSDE command-line tools (deprecated post-10.2). Since you're on 10.6.1 and using a user-schema geodatabase, you won’t have that utility and don’t need it.
Now, to your actual setup:
1. Geometry Checker should work — but only if:
All features have valid geometries (no NULL or corrupt shapes)
Geometry type is consistent (e.g., all polygons, no mix with points)
USER_SDO_GEOM_METADATA matches the data (SRID, extent, dimensions)
To verify, run:
SELECT COUNT(*) FROM your_table WHERE shape IS NULL;
SELECT SDO_GEOM.VALIDATE_GEOMETRY_WITH_CONTEXT(shape, 0.05) FROM your_table;
2. Views & registration limitations
Since it's a user-schema GDB and views can’t be registered in 10.6.1, ArcGIS won't fully understand the structure behind the scenes. That can trigger column mismatch or validation errors—even if the geometry looks fine in SQL.
Recommended test: Load a subset (say 100 features) into a scratch feature class via ArcMap. Run Geometry Checker on that. If it works, the issue is tied to schema interpretation or metadata—not the geometry itself.
Let me know if you want help building a SQL metadata checker for SRID + dimensionality.
Regards,
Venkat
Thanks so much for the insight! Indeed I think this is almost entirely down to the 10.6.1 geodatabase unfortunately. This happens with a number of tables and views and doesn't seem to be tied to any one specific one. Everything else worked out ok, no null geometries, and apart from one erroneous geometry in one of the views the rest are all OK. Metadata also complete.
It's already long on the cards to move to PostGIS but that's a slow process so I'll just have to try and get this done another way for now, good tip about the exporting, I'll give that a go.
Thank you!