Suite

Actualiser la connexion à la base de données dans ArcCatalog


J'ai créé une classe d'entités dans une connexion à la base de données Oracle 11g avec ArcCatalog 10.2 (sans ArcSDE) et je peux voir la table dans la base de données avec Sql Developer sans problème. Mais, si je supprime cette table avec une instruction SQL dans Sql Developer, puis actualise la connexion à la base de données dans ArcCatalog, la classe d'entités ne disparaît pas (même si je crée une nouvelle classe d'entités avec le même nom, j'ai une erreur de nom non valide car le nom existe déjà).

J'ai essayé le même scénario avec une vue, et il n'y a pas de problème, les mises à jour ArcCatalog.

Je pourrais supprimer la classe d'entités dans ArcCatalog, mais je dois utiliser une procédure stockée dans la base de données pour supprimer la table, puis actualiser ArcCatalog.

Avez-vous une idée de la raison pour laquelle ArcCatalog ne s'actualise pas ?


Il ne s'actualise pas car il existe toujours une référence à cette classe d'entités dans la géodatabase.

apporter des modifications aux géodatabases est plus complexe que de simplement supprimer une table car elle fait partie du « format » de la géodatabase plutôt que du simple SQL pur.

Au minimum, en plus de supprimer la table, vous devrez également vérifier et supprimer son UUID de la table GDB_Items (liste contenant toutes les classes d'entités, etc.), également GDB_ItemRelationShips en fonction de la conception de votre géodatabase.

pour plus d'informations sur la conception du gdb, veuillez consulter ce lien - https://desktop.arcgis.com/en/desktop/latest/manage-data/using-sql-with-gdbs/overview-geodatabase-system-tables .htm#GUID-9892ECE9-D9EA-47C7-AE41-C7318B5EA56C

Je vous recommande de consulter les API d'ESRI pour créer un script pour le faire plutôt que de modifier directement le SQL.