Définition des vues multi-versionnées
Les vues multi-versionnées intègrent des vues de base de données, des procédures stockées, des déclencheurs et des fonctions pour accéder à une version donnée des données dans une table de géodatabase à l'aide du langage SQL (Structured Query Language).
Les vues multi-versionnées sont implémentées au niveau d'ArcSDE. Cela signifie que les vues multi-versionnées ne fonctionnent pas avec les fonctionnalités implémentées au niveau de la géodatabase. Par conséquent, elles ne doivent pas être utilisées pour modifier des données qui participent au comportement de la géodatabase.
Le jeu de données sur lequel la vue multi-versionnée est basée doit être inscrit comme versionné. A chaque jeu de données versionné sont associées des tables de deltas qui consignent les modifications apportées au jeu de données. Lorsqu'une vue multi-versionnée accède à un jeu de données versionné, tous les enregistrements de la table métier sont sélectionnés et fusionnés avec des enregistrements des tables de deltas pour créer une vue qui inclut toutes les modifications apportées à la table métier dans le contexte de la version spécifiée. Les vues multi-versionnées semblent avoir les mêmes colonnes et lignes que la table métier qu'elles représentent. Contrairement aux vues de base de données ou spatiales, les vues multi-versionnées ne sont pas utilisées pour modifier la structure de la table ou limiter son accès, mais plutôt pour faciliter l'accès à une certaine version de la table.
Les applications qui ne prennent pas en charge le versionnement des géodatabases ArcSDE peuvent uniquement interroger directement la table métier d'un jeu de données versionné et n'ont aucun rapport avec les tables de deltas. L'utilisation des vues multi-versionnées avec ces applications leur fournit l'accès aux données dans les tables de deltas.
Les vues multi-versionnées sont d'abord conçues pour accéder aux colonnes d'attributs d'une table, plutôt qu'aux colonnes spatiales, bien qu'il soit possible d'accéder à ces dernières. L'accès à la colonne spatiale avec une vue multi-versionnée est plus simple si vous utilisez un type spatial, tel que ST_Geometry ou SDO_Geometry, pour stocker vos géométries. Il est plus compliqué si vous utilisez un type de stockage de géométrie binaire, tel que les types binaires connus compressés d'ArcSDE ou d'Open Geospatial Consortium, Inc. (OGC).
Vous pouvez utiliser des vues multi-versionnées pour lire ou modifier les données dans une table versionnée à l'aide de vues multi-versionnées. La mise à jour avec des vues multi-versionnées constitue une utilisation avancée des vues, est spécifique au système de gestion de bases de données (SGBD) et risque d'endommager votre géodatabase si elle n'est pas effectuée correctement.
Voici la procédure à suivre pour effectuer une mise à jour avec des vues multi-versionnées dans une invite de commandes. Il est important de suivre l'ordre indiqué :
- Créez une vue multi-versionnée.
- Créez une version dans laquelle effectuer vos mises à jour.
- Configurez la vue multi-versionnée pour utiliser la nouvelle version.
- Démarrez une session de mise à jour en exécutant la procédure edit_version ou la fonction appropriée à votre base de données.
- Effectuez vos mises à jour sur la vue multi-versionnée avec SQL.
- Appliquez vos mises à jour à la base de données ou annulez-les.
- Arrêtez la session de mise à jour en exécutant la procédure edit_version ou la fonction appropriée à votre base de données.
- Réconciliez et réinjectez vos mises à jour par l'intermédiaire d'ArcGIS.
- Une fois toutes les mises à jour réinjectées dans une version parent à l'aide d'ArcGIS, vous pouvez supprimer la version que vous avez créée pour vos modifications dans la vue multi-versionnée.