3. Langages de requête et de manipulation des données
97
Le concept de vue
permet de
restreindre une
table
Une mesure fondamentale de protection des données consiste en
ceci : seules les tables ou parties de tables nécessaires à
l'accomplissement de leurs tâches sont mises à la disposition des
utilisateurs dûment autorisés. Dans ce but nous créons des vues
(views, en anglais) sur les tables. Une vue est définie par la commande
SELECT à partir d’une ou de plusieurs tables physiques :
Définir une vue
CREATE VIEW nom de la vue AS commande SELECT
Figure 3-12
Définition des vues
pour protéger les
données
La figure 3-12 donne à titre d'exemple deux vues définies à partir
de la table de base PERSONNEL. La vue EMPLOYÉ contient tous les
attributs sauf les salaires. Dans la vue GROUPE_D figurent uniquement
les employés qui gagnent entre 70’000 et 90’000 francs suisses par
année. De manière analogue, nous pouvons créer d'autres vues, par
PERSONNEL
E19
E1
E7
E4
Savoy
Meier
Humbert
Brodard
Romont
Fribourg
Bulle
Fribourg
75'000
50'000
80'000
65'000
E#
Nom
Ville
Salaire
D6
D3
D5
D6
Affectation
CREATE VIEW
EMPLOYE AS
SELECT E#, Nom, Ville, Affectation
FROM
PERSONNEL
CREATE VIEW
GROUPE_D AS
SELECT
E#, Nom, Salaire, Affectation
FROM
PERSONNEL
WHERE
Salaire BETWEEN 70'000 AND 90'000
E#
E19
E1
E7
E4
Nom
Savoy
Meier
Humbert
Brodard
Ville
Romont
Fribourg
Bulle
Fribourg
Affectation
D6
D3
D5
D6
E#
E19
E7
Nom
Savoy
Humbert
Salaire
75'000
80'000
Affectation
D6
D5
97
Le concept de vue
permet de
restreindre une
table
Une mesure fondamentale de protection des données consiste en
ceci : seules les tables ou parties de tables nécessaires à
l'accomplissement de leurs tâches sont mises à la disposition des
utilisateurs dûment autorisés. Dans ce but nous créons des vues
(views, en anglais) sur les tables. Une vue est définie par la commande
SELECT à partir d’une ou de plusieurs tables physiques :
Définir une vue
CREATE VIEW nom de la vue AS commande SELECT
Figure 3-12
Définition des vues
pour protéger les
données
La figure 3-12 donne à titre d'exemple deux vues définies à partir
de la table de base PERSONNEL. La vue EMPLOYÉ contient tous les
attributs sauf les salaires. Dans la vue GROUPE_D figurent uniquement
les employés qui gagnent entre 70’000 et 90’000 francs suisses par
année. De manière analogue, nous pouvons créer d'autres vues, par
PERSONNEL
E19
E1
E7
E4
Savoy
Meier
Humbert
Brodard
Romont
Fribourg
Bulle
Fribourg
75'000
50'000
80'000
65'000
E#
Nom
Ville
Salaire
D6
D3
D5
D6
Affectation
CREATE VIEW
EMPLOYE AS
SELECT E#, Nom, Ville, Affectation
FROM
PERSONNEL
CREATE VIEW
GROUPE_D AS
SELECT
E#, Nom, Salaire, Affectation
FROM
PERSONNEL
WHERE
Salaire BETWEEN 70'000 AND 90'000
E#
E19
E1
E7
E4
Nom
Savoy
Meier
Humbert
Brodard
Ville
Romont
Fribourg
Bulle
Fribourg
Affectation
D6
D3
D5
D6
E#
E19
E7
Nom
Savoy
Humbert
Salaire
75'000
80'000
Affectation
D6
D5
