Database Reference
In-Depth Information
Enin, des déclencheurs d'un type particulier, les trigger INSTEAD OF , permettent de
réaliser des traitements complexes, à la manière des procédures, lorsque survient une
opération de mise à jour ( INSERT , UPDATE ou DELETE ).
Tous ces éléments constituent le modèle externe de données (MED).
Pour tout développement de qualité, les objets du MED sont indispensables pour éviter
tout accès direct aux tables. En pratique, bon nombre d'applications se passent de ce
concept en manipulant directement les tables. Et c'est une erreur ! En effet, la couche d'in-
terface ou d'abstraction apportée par le modèle externe de données rend indépendants la
structure de la base et l'accès aux données. En gros, une modiication de la structure des
tables de la base n'affecte pas la couche externe et si l'application a été développée sur
cette couche, il n'est généralement pas nécessaire de la modiier pour qu'elle continue de
fonctionner, sauf si les modiications de structure apportent de nouvelles fonctionnalités
ou portent atteinte aux données stockées dans la base.
En combinant vues, fonctions table, déclencheurs INSTEAD OF et procédures stockées,
on peut concevoir des structures de données proches de celles des objets applicatifs et y
greffer les méthodes CRUD de manipulation desdits objets ( INSERT , SELECT , UPDATE ,
DELETE ). En fait, le modèle externe de données simule de manière performante ce qu'un
ORM (Object Relational Mapping) fait de manière contre-performante !
Ce chapitre décrit les différents types de vues qui existent :
les vues relationnelles issues de tables SQL2 ;
les vues matérialisées issues de tables SQL2 ;
les vues objet issues de tables SQL2 ou SQL3.
La syntaxe SQL utilisée dans ce chapitre est celle d'Oracle ; elle est relativement proche du
standard en comparaison avec d'autres SGBD (excepté concernant les vues objet).
Les vues relationnelles (SQL2)
Une vue SQL2 est une table virtuelle du fait qu'elle n'occupe aucun espace disque pour
contenir ses données (seules les données iltrées de la table sont montées en mémoire à chaque
sollicitation). Une vue relationnelle n'a pas d'existence propre (elle ne stocke pas de données),
seule sa structure est stockée dans le dictionnaire de données.
Une.vue.est.créée.à.l'aide.d'une.instruction. SELECT .appelée.« requête.de.définition »..Cette.
requête.interroge.une.ou.plusieurs.tables,.vues.(ou.vues.matérialisées)..Une.vue.se.recharge.
chaque.fois.qu'elle.est.interrogée.
 
Search WWH ::




Custom Search