Select to view content in your preferred language

Delete a nonexistent, broken database view from Catalog

530
4
Jump to solution
05-10-2024 06:55 AM
Bud
by
Esteemed Contributor

ArcGIS Pro 3.3.0; Oracle 18c database (non-GDB)

Sometimes database views get broken in ArcGIS Pro. I try to delete the view using Catalog, but I get various errors.

Often, the cause is the view has been deleted from the database. The view was never registered with the geodatabase (in this particular case, the Oracle database is not an enterprise geodatabase, proving that the view isn't registered). So it's unclear why the view persists in Catalog since the view wouldn't be listed in any geodatabase system tables (since the geodatabase system tables don't exist).

How can I delete the broken database view from Catalog?

0 Kudos
1 Solution

Accepted Solutions
Bud
by
Esteemed Contributor

Create a fake view via a SQL client (outside of Pro) that uses the same name as the broken Catalog view:

create or replace view roll_up_vw as
select
1 as objectid
from
dual

Then, delete the view via Catalog. The view will disappear from Catalog.

View solution in original post

4 Replies
Bud
by
Esteemed Contributor

Create a fake view via a SQL client (outside of Pro) that uses the same name as the broken Catalog view:

create or replace view roll_up_vw as
select
1 as objectid
from
dual

Then, delete the view via Catalog. The view will disappear from Catalog.

AliciaMcMurchie1
Occasional Contributor

Will this solution work for a broken database view in an Enterprise Geodatabase, too? 

Bud
by
Esteemed Contributor

Yes. I think @MarceloMarques would agree.

AliciaMcMurchie1
Occasional Contributor

Thanks! I had broken a database view in an Enterprise GDB by changing a field name instead of alias in the feature class it referenced, causing me to be unable to delete the DB view. Changing the field name back in the feature class "fixed" the DB view and I was able to removed it, though. It's good to know there's another solution in case something else caused a DB view to break, though. 

0 Kudos