Database Reference
In-Depth Information
Les vues objet de tables relationnelles permettent de conserver les données telles quelles, sans
modiier structurellement la base. Ce mécanisme est intéressant, car il permettra aux pro-
grammeurs de migrer sans effet de bord vers la technologie objet. Par la suite, des méthodes
peuvent être programmées. Ces méthodes peuvent coder des transactions tout en manipulant
des données tabulaires.
Décrivons les mécanismes qu'Oracle propose.
Étapes à respecter
Plusieurs étapes sont nécessaires à la déinition d'une vue objet.
Utiliser un type (existant ou à créer) qui formera la structure de la vue. Ce type peut inclure
des colonnes composées, références, collections ou méthodes.
Écrire la requête de déinition qui extrait les données et charge la vue d'objets.
Spéciier un identiiant (OID), valeur unique basée sur un attribut clé primaire en général.
Cet identiiant permettra de créer une référence vers chaque objet de la vue (comme pour
les tables objet qui peuvent être accessibles par références).
Si la vue doit être modiiable ( updatable object view ), il faudra programmer un déclencheur
INSTEAD OF .
La syntaxe simpliiée de création d'une vue SQL3 est la suivante.
CREATE VIEW [nom_ schéma .] nom_vue
[ ( alias1 , alias2 ) ]
OF [ schéma .] nom _ type
{ WITH OBJECT IDENTIFIER { DEFAULT | ( colonne [, colonne ]...) }
| UNDER [ nom _ schéma .] nom _ super _ vue }
AS requête_SELECT
[WITH { READ ONLY | CHECK OPTION } ];
OF nom_type précise le nom du type qui forme la structure de la vue.
WITH OBJECT IDENTIFIER précise la clé primaire de la table source.
UNDER spéciie l'héritage de vue.
requête_SELECT requête de déinition interrogeant une ou plusieurs tables ou vues.
WITH READ ONLY et WITH CHECK OPTION ont la même signiication que les vues SQL2.
Étudions la construction et la manipulation d'une vue objet à partir des tables relationnelles
employees et departments . Suivons les étapes énoncées précédemment.
Vue contenant une collection
Déinissons la vue v_obj_dep_emps qui caractérise l'association entre les tables employees
et departments . En disposant la collection emps_nt dans la vue des départements, on peut
Search WWH ::




Custom Search