La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

NIVEAU LOGIQUE Vues. Fenêtre dynamique sur la base Ses données proviennent d'autres tables ou d'autres vues.

Présentations similaires


Présentation au sujet: "NIVEAU LOGIQUE Vues. Fenêtre dynamique sur la base Ses données proviennent d'autres tables ou d'autres vues."— Transcription de la présentation:

1 NIVEAU LOGIQUE Vues

2 Fenêtre dynamique sur la base Ses données proviennent d'autres tables ou d'autres vues.

3 table employé vue emp10bis numéro 7654 7902 nom Johnson Scott emploi caissier analyste id 7839 nom Adams job manager dpt 30

4 vue : création CREATE [OR REPLACE] [ FORCE | NOFORCE ] VIEW view [ ( alias [,alias]…)] AS subquery [ WITH CHECK OPTION [CONSTRAINT constraint ] ] [ WITH READ ONLY ] subquery : SELECT complexe autorisé : join, GROUP BY, select imbriqué ; pas de ORDER BY (sera demandé dans la sélection si besoin)

5 exemple : création simple CREATE VIEW emp10 AS SELECT id, nom, job FROM employé WHERE dpt = 10 DESCRIBE emp10

6 exemple : création avec alias CREATE VIEW emp10bis AS SELECT id numéro, nom, job emploi FROM employé WHERE dpt = 10 CREATE VIEW emp10ter (numéro, nom, emploi) AS SELECT id, nom, job FROM employé WHERE dpt = 10 sélection ultérieure : emploi des noms d'alias

7 création : jointure, group by CREATE VIEW empdpt AS SELECT E.*, D.nom nomdpt, D.localisation FROM employé E, departement D WHERE E.dpt = D.id CREATE VIEW statdpt AS SELECT D.nom, count(*) personnel FROM employé E, departement D WHERE E.dpt = D.id GROUP BY D.id, D.nom

8 exemple : modification vue CREATE OR REPLACE VIEW emp10 (numéro, nom, emploi) AS SELECT id, nom, job FROM employé WHERE dpt = 10 modification de la définition maintient des droits d'accès

9 vue : sélection Une vue peut être interrogée comme une relation ordinaire exemple : emp10bis (numéro, nom, emploi) select * from emp10bis where emploi='manager' mise en œuvre par le serveur Oracle - recherche déf de la vue : catalogue USER_VIEWS - vérifie droits d'accès sur table(s) de base - conversion de la requête sur la vue en une requête sur table(s) de base

10 vue : mise à jour des données insert, update, delete : la mise à jour des données d'une vue est souvent soumise à des restrictions (respect de la cohérence globale de la base)

11 vue simple et complexe caractéristiquevue simplevue complexe nombre de tables11 ou plusieurs contient fonctionnonoui contient des groupes de données nonoui insert, update, delete sur la vue ouipas toujours

12 suppression pour vue complexe suppression d'un n-uplet interdite si la définition de la vue comporte -fonction d'agrégation -clause GROUP BY -mot clé DISTINCT

13 modification pour vue complexe modification d'un n-uplet interdite si la définition de la vue comporte -fonction d'agrégation -clause GROUP BY -mot clé DISTINCT -colonnes définies à l'aide d'expressions idem suppression

14 insertion pour vue complexe insertion d'un n-uplet interdite si la définition de la vue comporte -fonction d'agrégation -clause GROUP BY -mot clé DISTINCT -colonnes définies à l'aide d'expressions -existence de colonnes NOT NULL dans l'une des tables de base et qui n'est pas sélectionnée dans la vue idem modif.

15 clause WITH CHECK OPTION pour assurer que toutes les op. de m.à.j des données de la vue restent dans le domaine de la vue CREATE OR REPLACE VIEW emp10 AS SELECT * FROM employé WHERE dpt = 10 WITH CHECK OPTION CONSTRAINT emp10_ck le n° de département ne peut être modifié via la vue  erreur

16 clause WITH READ ONLY aucune opération insert, delete, update autorisée CREATE OR REPLACE VIEW emp10 AS SELECT * FROM employé WHERE dpt = 10 WITH READ ONLY delete from emp10 where id = 103  erreur

17 vue : suppression DROP VIEW view ex : drop view emp10 Note : suppression de la déf. dans le dictionnaire invalidation des vues, applications qui y sont liées aucune suppression de données dans les tables

18 vues : conclusion Vue dérivée de données de tables, vues sous-jacentes Avantages fournis : restriction des accès à la base simplification des requêtes perception des données propre à chaque utilisateur peut être supprimée sans qu'il y ait suppression des données sous-jacentes


Télécharger ppt "NIVEAU LOGIQUE Vues. Fenêtre dynamique sur la base Ses données proviennent d'autres tables ou d'autres vues."

Présentations similaires


Annonces Google