Académique Documents
Professionnel Documents
Culture Documents
Raida ElMansouri
Faculté des NTIC
Raida.elmansouri@univ-constantine2.dz
Université Constantine 2 2
Pour quoi faire?
Université Constantine 2 3
Vues
• La vue mono-table est créée à partir d’une table, les
modifications sont possibles, les modifications dans la
table → jointure en forme procédurale est autorisée. Une
vue mono-table pourra être mise à jour avec contraintes
• Vue multi-table est crée par une jointure en forme
relationnelle, par contre aucune modification
n'est autorisée. Les vues multi-table servent à simplifier
des requêtes, pas de modifications possibles dans ce
type de vue,
Université Constantine 2 4
Création de vues
Université Constantine 2 6
Exemple
Université Constantine 2 7
Exemples
Université Constantine 2 8
Conditions générales de mise à jour
UPDATE, DELETE, INSERT possibles si :
• On peut retrouver la ou les lignes de la table originale
concernée.
• La vue ne doit pas contenir :
• Un opérateur ensembliste (UNION, EXCEPT, INTERSECT)
• Un opérateur DISTINCT
• Une fonction d’aggrégation comme attribut
• Une clause GROUP BY, ORDER BY ou CONNECT BY
• Une jointure (vue construite sur une seule table)
Université Constantine 2 9
Conditions générales de mise à jour
Exemple
• modification des salaires du département 10 à travers la
vue emp 10.
UPDATE emp10
SET sal = sal *1.1;
• Toutes les lignes de la table " emp ", telles que le contenu
de la colonne n_dept est égal à 10 seront modifiées.
Université Constantine 2 10
Suppression d’une vue
DROP VIEW nom_vue;
• Cette commande supprime la définition de la vue dans la
métabase (ou catalogue) de la base. En général et sauf
pour les vues concrètes, un vue n’a pas d’existence
physique, c’est une fenêtre dynamique non matérialisée
sur les disques. La destruction d’une vue n’affecte aucun
tuple.
Université Constantine 2 11
vues concrètes
• Une vue est en principe une fenêtre dynamique sur une
base de données, dont une partie est instanciée lors
d’une question.
• La concrétisation de la vue par le serveur peut être plus
avantageuse si celle-ci est souvent utilisée et si les tables
sources sont peu modifiées. Ainsi, certains serveurs
supportent des vues concrètes.
Université Constantine 2 12
Définition
• Vue concrète (Concrete view) :Table calculée à partir des
tables de la base par une question et matérialisée sur
disques par le SGBD.
• Certains SGBD supportent les vues concrètes qui sont
avantageuses lorsqu’elles sont souvent utilisées, si leurs
tables sources sont peu modifiées et quand elles
contiennent des agrégats : elle permettent ici de
mémoriser des résumés compacts des tables.
Université Constantine 2 13
Definition
• Ce genre de vues est calculé dès sa définition et est modifié
chaque fois que ses tables sources sont modifiées. La
modification est différentielles . C’est -à-dire que seuls les
tuples modifiés sont pris en compte pour calculer les
modifications à apporter à la vue.
• Les vues concrètes sont définies par la requête :
• CREATE CONCRETE VIEW
Université Constantine 2 14
SQL2
• ON DELETE et ON UPDATE permettent de prendre en
charge la contrainte d’intégrité référentielle en contrôlant la
suppression ou la mise à jour de la clé étrangère:
• NO ACTION : ne rien faire
• CASCADE : supprimer ou faire les m.à.j. nécessaire en
cascade.
• SET DEFAULT : indique qu’il faut remplacer la valeur de la clé
étrangère dans la relation référençante par la valeur par
défaut déclarée dans CREATE
• SET NULL : fait exactement la même chose mais avec la
valeur NULL
Université Constantine 2 15