Une vue versionnée incorpore une vue de base de données, ainsi que des procédures stockées, des déclencheurs et des fonctions pour vous permettre d'utiliser SQL (Structured Query Language) afin de lire ou de mettre à jour des données dans une géodatabase ayant été enregistrée pour utiliser le versionnement traditionnel. Lorsque vous interrogez une vue versionnée, vous pouvez voir les données dans la table de base (métier) et les modifications stockées dans les tables de deltas. Les déclencheurs utilisés par les vues versionnées mettent à jour les tables de deltas lorsque vous modifiez la vue versionnée à l'aide du langage SQL.
Contrairement aux vues de base de données ou spatiales, les vues 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 d'une table ou d'une classe d'entités. Par conséquent, vous ne spécifiez pas de clause where lors de la création d'une vue versionnée. En conséquence, les vues versionnées contiennent les mêmes colonnes et lignes que la table de base qu'elles représentent.
Résumé du fonctionnement des vues versionnées
Chaque table ou classe d'entités versionnée possède des tables de deltas associées qui enregistrent les modifications qui lui sont apportées. Lorsqu'une vue versionnée accède à une table ou classe d'entités versionnée, tous les enregistrements de la table de base sont sélectionnés et fusionnés avec les enregistrements des tables de deltas pour créer une vue qui inclut toutes les modifications apportées à la table de base dans le contexte de la version spécifiée.
Sans les vues versionnées, les applications qui ne prennent pas en charge le versionnement des géodatabases peuvent uniquement interroger directement la table de base d'une table ou classe d'entités versionnée et n'ont aucune connexion avec les tables de deltas. L'utilisation des vues versionnées avec ces applications est utile car elle fournit aux applications un accès aux données dans les tables de deltas.
Les vues 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. Reportez-vous à la rubrique Type de données pouvant être modifié avec SQL pour plus d'informations.
Si vous interrogez une vue versionnée sans définir la version ni l'état, vous référencez l'état actuel de la version DEFAULT (PAR DÉFAUT). Si d'autres utilisateurs valident les modifications apportées à la version DEFAULT (PAR DÉFAUT) (modifiant ainsi l'état que la version DEFAULT (PAR DÉFAUT) référence), vos requêtes suivantes verront l'état le plus récent de DEFAULT (PAR DÉFAUT) et ses modifications.
Si vous spécifiez la version à interroger à l'aide de la fonction ou procédure set_current_version (les noms varient légèrement selon votre système de gestion de bases de données), vous référencez l'état que la version spécifiée référençait lorsque vous avez défini la version.
Par exemple, si vous exécutez la fonction set_current_version pour définir la version sur une version nommée appelée decedits et que decedits pointe sur l'état 4 dans l'arborescence d'état, toutes les requêtes SQL suivantes que vous exécutez par rapport à decedits verront l'état 4 des données, même si d'autres utilisateurs publient des modifications dans decedits qui font évoluer l'état actuel de decedits sur 25. Pour voir l'état 25, exécutez de nouveau la fonction set_current_version pour définir la version sur l'état actuel de decedits.
Création de vues versionnées
Des vues versionnées sont créées automatiquement pour les tables et les classes d'entités enregistrées comme versionnées dans ArcGIS 10.1 ou version ultérieure. Si vous enregistrez un jeu de données d'entité comme versionné, une vue versionnée est créée sur chaque classe d'entités du jeu de données d'entité. La vue qui est créée porte le même nom que la table ou la classe d'entité, avec le suffixe _evw.
Si les données ont été enregistrées comme versionnées dans ArcGIS 10 ou une version antérieure, vous pouvez créer une vue versionnée à partir de ArcGIS Desktop 10.1 ou une version ultérieure en cliquant avec le bouton droit sur la table, la classe d'entités ou le jeu de données d'entité, en pointant sur Manage (Gérer) et en cliquant sur Enable SQL Access (Activer l'accès à SQL).