Vues dans Oracle
La création de vues peut améliorer les délais de réponse aux requêtes en restreignant le nombre de tables et de colonnes lors de la recherche. Vous pouvez créer des vues qui apparaissent sur les applications clientes sous forme de classes d'entités ou de tables non spatiales. Une vue peut référencer une seule table ou classe d'entités ; vous pouvez également créer des vues pour rassembler les données de plusieurs tables.
Tout utilisateur doté des autorisations requises peut créer une vue à l'aide de SQL ou la commande sdetable d'ArcSDE. En outre, les vues peuvent servir à modifier les données si elles sont créées dans ce sens. Pour en savoir plus sur les privilèges nécessaires pour créer ou modifier des vues, consultez la documentation Oracle appropriée à votre version.
Vous pouvez accéder aux définitions de vue dans Oracle en interrogeant la vue du dictionnaire de données ALL_VIEWS.
Le dictionnaire de données Oracle stocke des informations sur les vues
Lorsque vous créez des vues dans une base de données Oracle à l'aide de SQL ou de la commande sdetable, les vues sont définies dans le dictionnaire de données Oracle. Vous pouvez par conséquent interroger le dictionnaire de données Oracle pour voir les définitions de vue.
Oracle gère une vue accessible aux utilisateurs, appelée ALL_VIEWS, qui décrit toutes les vues auxquelles l'utilisateur connecté a le droit d'accéder. Voici une définition de la vue ALL_VIEWS.
DESCRIBE all_views;
Nom |
Nul ? |
Type |
---|---|---|
OWNER |
NOT NULL |
VARCHAR2(30) |
VIEW_NAME |
NOT NULL |
VARCHAR2(30) |
TEXT_LENGTH |
NUMBER |
|
TEXT |
LONG |
|
TYPE_TEXT_LENGTH |
NUMBER |
|
TYPE_TEXT |
VARCHAR2(4000) |
|
OID_TEXT_LENGTH |
NUMBER |
|
OID_TEXT |
VARCHAR2(4000) |
|
VIEW_TYPE_OWNER |
VARCHAR2(30) |
|
VIEW_TYPE |
VARCHAR2(30) |
|
SUPERVIEW_NAME |
VARCHAR2(30) |
|
EDITIONING_VIEW* |
VARCHAR2(1) |
|
READ_ONLY* |
VARCHAR2(1) |
*Uniquement dans les bases de données Oracle 11g.
Les vues ont des propriétaires, des noms et du texte. La colonne TEXT d'ALL_VIEWS contient le texte de la requête qui définit la vue.
En plus de restreindre l'accès à certains enregistrements, vous utilisez également des vues pour les tables qui contiennent plus d'une colonne SDO_Geometry ou ST_Geometry pour pouvoir utiliser les tables dans ArcGIS ou les inscrire auprès de la géodatabase. ArcGIS ne prend pas en charge les couches avec plusieurs colonnes de géométrie, donc pour les utiliser avec ArcGIS, vous devez d'abord créer une vue contenant une seule colonne de géométrie.