Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parAmélie Mercier Modifié depuis plus de 9 années
1
Module 11 : Implémentation de vues
2
Vue d'ensemble Présentation d'une vue Avantages liés aux vues Définition de vues Modification de données à l'aide de vues Performances
3
Présentation d'une vue titleviewtitleview title author Last of the Mohicans The Village Watch-Tower Poems Last of the Mohicans The Village Watch-Tower Poems James Fenimore Cooper Kate Douglas Wiggin Wilfred Owen James Fenimore Cooper Kate Douglas Wiggin Wilfred Owen titletitle title_no title author synopsis 123123 123123 Last of the Mohicans The Village Watch-Tower Poems Last of the Mohicans The Village Watch-Tower Poems James Fenimore Cooper Kate Douglas Wiggin Wilfred Owen James Fenimore Cooper Kate Douglas Wiggin Wilfred Owen ~~~ Vue de l'utilisateur USE library GO CREATE VIEW dbo.TitleView AS SELECT title, author FROM title USE library GO CREATE VIEW dbo.TitleView AS SELECT title, author FROM title
4
Avantages liés aux vues Mise en valeur des données pour les utilisateurs Mettre en valeur les données importantes ou appropriées seulement Limiter l'accès aux données sensibles Masquage de la complexité de la base de données Masquer la conception de bases de données complexes Simplifier les requêtes complexes, notamment les requêtes distribuées sur des données hétérogènes Simplification de la gestion des autorisations des utilisateurs Organisation des données pour les exporter vers d'autres applications
5
Définition de vues Création de vues Exemple : Vue de tables jointes Modification et suppression de vues Prévention des chaînes de propriété rompues Localisation des informations de définition de vue Masquage des définitions de vues
6
Création de vues Création d'une vue Restrictions relatives à la définition des vues Une vue ne peut pas comporter la clause ORDER BY Une vue ne peut pas faire référence à un mot clé INTO USE library GO CREATE VIEW dbo.UnpaidFinesView (Member, TotalUnpaidFines) AS SELECT member_no, (sum(fine_assessed-fine_paid)) FROM loanhist GROUP BY member_no HAVING SUM(fine_assessed-fine_paid) > 0 GO USE library GO CREATE VIEW dbo.UnpaidFinesView (Member, TotalUnpaidFines) AS SELECT member_no, (sum(fine_assessed-fine_paid)) FROM loanhist GROUP BY member_no HAVING SUM(fine_assessed-fine_paid) > 0 GO
7
Exemple : Vue de tables jointesmember_nomember_no 11 12 13 14 11 12 13 14lastnamelastname Thomas Funk Rudd Thomas Funk Ruddfirstnamefirstname Gary Clair Frank Clair Gary Clair Frank Clairmiddleinitialmiddleinitial ~~~ photographphotograph lastnamelastname Thomas Funk Thomas Funk firstnamefirstname Clair Frank Clair Frank birth date 92.01.16 84.01.18 92.01.16 84.01.18 member juvenile BirthdayView USE library GO CREATE VIEW dbo.BirthdayView (Lastname, Firstname, [Birth Date]) AS SELECT lastname, firstname, CONVERT(char(8), birth_date, 2) FROM member JOIN juvenile ON member.member_no = juvenile.member_no USE library GO CREATE VIEW dbo.BirthdayView (Lastname, Firstname, [Birth Date]) AS SELECT lastname, firstname, CONVERT(char(8), birth_date, 2) FROM member JOIN juvenile ON member.member_no = juvenile.member_nomember_nomember_no 12 13 12 13adult_noadult_no 11 6 11 6birth_datebirth_date 1992-01-16 00:00:00.000 1984-01-18 00:00:00.000 1992-01-16 00:00:00.000 1984-01-18 00:00:00.000
8
Modification et suppression de vues Modification de vues Conserve les autorisations attribuées La nouvelle instruction SELECT et ses options remplacent la définition existante Suppression de vues USE library GO ALTER VIEW dbo.TitleView AS SELECT title, authors, synopsis FROM title USE library GO ALTER VIEW dbo.TitleView AS SELECT title, authors, synopsis FROM title DROP VIEW UnpaidFinesView
9
GRANT SELECT ON view2 TO pierre SELECT * FROM maria.view2 Objets dépendants ayant différents propriétaires Exemple : Maria exécute : Pierre exécute : Prévention des chaînes de propriété rompues maria.view2 lucia.view1 lucia.table1
10
Localisation des informations de définition de vue Localisation des définitions de vues Non disponible si la vue a été créée avec l'option WITH ENCRYPTION Localisation des dépendances de vues Énumération des objets dont dépend la vue Énumération des objets qui dépendent d'une vue
11
Masquage des définitions de vues Utilisation de l'option WITH ENCRYPTION Conservation de toutes les entrées dans la table syscomments USE library GO CREATE VIEW dbo.UnpaidFinesView (Member, TotalUnpaidFines) WITH ENCRYPTION AS SELECT member_no, (sum(fine_assessed-fine_paid)) FROM loanhist GROUP BY member_no, fine_assessed, fine_paid HAVING SUM(fine_assessed-fine_paid) > 0 GO USE library GO CREATE VIEW dbo.UnpaidFinesView (Member, TotalUnpaidFines) WITH ENCRYPTION AS SELECT member_no, (sum(fine_assessed-fine_paid)) FROM loanhist GROUP BY member_no, fine_assessed, fine_paid HAVING SUM(fine_assessed-fine_paid) > 0 GO
12
Modification de données à l'aide de vues Elles ne peuvent pas affecter plusieurs tables sous-jacentes Elles ne peuvent pas être effectuées sur certaines colonnes Elles peuvent produire des erreurs si elles affectent des colonnes auxquelles il n'est pas fait référence dans la vue Elles sont vérifiées si la clause WITH CHECK OPTION a été spécifiée
13
Performances USE library GO CREATE VIEW dbo.LoanableView AS SELECT * FROM CopywideView WHERE loanable = 'y' USE library GO CREATE VIEW dbo.LoanableView AS SELECT * FROM CopywideView WHERE loanable = 'y' titletitle 1 1 ~ ~ ~ ~ ~ ~ n n 2 2 ~ ~ ~ ~ ~ ~ n n 3 3 ~ ~ ~ ~ ~ ~ y y 4 4 ~ ~ ~ ~ ~ ~ y y 5 5 ~ ~ ~ ~ ~ ~ n n 6 6 ~ ~ ~ ~ ~ ~ y y CopywideViewCopywideView 1 1 ~ ~ ~ ~ ~ ~ n n 2 2 ~ ~ ~ ~ ~ ~ n n 3 3 ~ ~ ~ ~ ~ ~ y y 4 4 ~ ~ ~ ~ ~ ~ y y 5 5 ~ ~ ~ ~ ~ ~ n n 6 6 ~ ~ ~ ~ ~ ~ y y itemitem 1 1 ~ ~ ~ ~ ~ ~ n n 2 2 ~ ~ ~ ~ ~ ~ n n 3 3 ~ ~ ~ ~ ~ ~ y y 4 4 ~ ~ ~ ~ ~ ~ y y 5 5 ~ ~ ~ ~ ~ ~ n n 6 6 ~ ~ ~ ~ ~ ~ y y copycopy 1 1 ~ ~ ~ ~ ~ ~ n n 2 2 ~ ~ ~ ~ ~ ~ n n 3 3 ~ ~ ~ ~ ~ ~ y y 4 4 ~ ~ ~ ~ ~ ~ y y 5 5 ~ ~ ~ ~ ~ ~ n n 6 6 ~ ~ ~ ~ ~ ~ y y SELECT DISTINCT isbn, title, author FROM LoanableView WHERE translation = 'french' SELECT DISTINCT isbn, title, author FROM LoanableView WHERE translation = 'french'LoanableViewLoanableView 3 3 ~ ~ ~ ~ ~ ~ 4 4 ~ ~ ~ ~ ~ ~ 6 6 ~ ~ ~ ~ ~ ~ y y y y y y
14
Conseils pratiques Spécifiez dbo en tant que propriétaire de toutes les vues Vérifiez les relations de dépendance des objets avant de les supprimer Vérifiez les relations de dépendance des objets avant de les supprimer Évaluez soigneusement la nécessité de créer des vues basées sur des vues Évaluez soigneusement la nécessité de créer des vues basées sur des vues N'effacez jamais d'entrées dans la table syscomments Mettez au point une convention de dénomination standard
15
Atelier 11.1 : Implémentation de vues
16
Contrôle des acquis Présentation d'une vue Avantages liés aux vues Définition de vues Modification de données à l'aide de vues Performances
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.