0% ont trouvé ce document utile (0 vote)
3 vues11 pages

Views

Les vues sont des tables virtuelles qui ne stockent pas de données mais des requêtes SQL, offrant des avantages tels que la sécurité et la simplification des requêtes. Les vues peuvent être modifiables sous certaines conditions, tandis que les vues matérialisées stockent physiquement les données et améliorent les performances, avec des options de rafraîchissement automatique ou manuel. Des exemples de création de vues et de mises à jour via des vues sont fournis, illustrant leur utilisation dans la gestion des données des employés.

Transféré par

Layal
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
3 vues11 pages

Views

Les vues sont des tables virtuelles qui ne stockent pas de données mais des requêtes SQL, offrant des avantages tels que la sécurité et la simplification des requêtes. Les vues peuvent être modifiables sous certaines conditions, tandis que les vues matérialisées stockent physiquement les données et améliorent les performances, avec des options de rafraîchissement automatique ou manuel. Des exemples de création de vues et de mises à jour via des vues sont fournis, illustrant leur utilisation dans la gestion des données des employés.

Transféré par

Layal
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Vues et Vues matérialisées

Une VIEW est une table virtuelle :


• Elle ne stocke pas les données
• Elle stocke uniquement la requête SQL
• Les données sont lues en temps réel depuis les
tables de base

Avantages
•Sécurité (masquer certaines colonnes)
•Simplification des requêtes complexes
•Réutilisation
Créer une vue vue_salaire_eleve contenant les
employés ayant un salaire > 6000

CREATE VIEW vue_salaire_eleve AS


SELECT id, nom, salaire
FROM Employe
WHERE salaire > 6000;
Mise à jour via une vue
Une vue est modifiable si :
• Elle concerne une seule table
• Pas de GROUP BY, DISTINCT, JOIN, COUNT.
Augmenter le salaire de l’employé id = 3 via la vue
augmentation_salaire

UPDATE augmentation_salaire
SET salaire = salaire + 500
WHERE id = 3;
Créer une vue affichant le salaire moyen par
département

CREATE VIEW vue_moyenne_salaire AS


SELECT departement, AVG(salaire) AS salaire_moyen
FROM Employe
GROUP BY departement;
VIEW MATÉRIALISÉE
Une vue matérialisée :
• Stocke physiquement les données
• Améliore les performances
• Peut être rafraîchie automatiquement ou
manuellement
Créer une vue matérialisée vue_salaire_eleve
contenant les employés ayant un salaire > 6000

CREATE MATERIALIZED VIEW vm_employes


BUILD IMMEDIATE
REFRESH COMPLETE
AS
SELECT * FROM Employe
WHERE salaire > 6000;
INSERT INTO Employe VALUES (10, 'Ali', 7000, 'IT');

Select * from vue_salaire_eleve


Select * from vm_employes

BEGIN
DBMS_MVIEW.REFRESH('VM_EMPLOYES');
END;
/
Refresh après 1 minute
CREATE MATERIALIZED VIEW vm_employes
REFRESH COMPLETE
START WITH SYSDATE
NEXT SYSDATE + (1/1440)
AS
SELECT * FROM Employe WHERE salaire > 6000;
COMMIT
L’exécution d’un COMMIT déclenche le
rafraîchissement de la vue matérialisée définie
avec ON COMMIT.

CREATE MATERIALIZED VIEW vm_employes


REFRESH COMPLETE ON COMMIT
AS
SELECT * FROM Employe;

Vous aimerez peut-être aussi