UML 2 pour les bases de données
184
© Éditions Eyrolles
AND compa IN
(SELECT compa FROM pilote GROUP BY compa
HAVING COUNT(*) >= 2)
AND age BETWEEN 35 AND 38
Le résultat retourne :
NOM
AGE COMP
------------------------------ --------- ---Bidal
36 ASO
Soutou
36 CAST
On se rend compte que le concepteur de cette base n’a pas forcément pris en compte la nécessité
d’effectuer cette requête lors de la conception. Cela illustre une des fonctionnalités des bases
de données, à savoir le fait de ne pas connaître exhaustivement les requêtes à soumettre, et
qu’on peut déduire des informations en rapprochant des faits élémentaires entre eux.
Contrôle des données
Dans un contexte multi-utilisateur, SQL a dû s’adapter pour :
●
contrôler l’accès aux données (privilèges en lecture, modification ou suppression) contenues
dans les tables ;
●
assurer la confidentialité et l’intégrité des informations. La confidentialité est souvent réalisée
par l’utilisation de vues (views).
Attribution de privilèges
Les instructions SQL qui définissent les privilèges sur les données sont fondées sur les directives
GRANT (pour autoriser) et REVOKE (pour interdire).
Exemple
Tableau 3.2 Privilèges
Utilisateur Soutou
Utilisateur Tremont
Soutou désire autoriser l’utilisateur Tremont à lire
la table Pilote et à modifier la colonne age.
Tremont autorise l’utilisateur Soutou à lire et à
insérer des enregistrements dans la table
Compagnie.
Tremont désire interdire désormais à
l’utilisateur Soutou d’insérer des
enregistrements dans la table Compagnie.
Pilote
brevet
nom
age
compa
3MPY93
Soutou
36
CAST
16AGN65
Bidal
36
CAST
30MPY67
Lamothe
34
CAST
25MPY67
Albaric
34
AF
Compagnie
comp
nom_comp
AF
Air France
CAST
Castanet Air Lines
184
© Éditions Eyrolles
AND compa IN
(SELECT compa FROM pilote GROUP BY compa
HAVING COUNT(*) >= 2)
AND age BETWEEN 35 AND 38
Le résultat retourne :
NOM
AGE COMP
------------------------------ --------- ---Bidal
36 ASO
Soutou
36 CAST
On se rend compte que le concepteur de cette base n’a pas forcément pris en compte la nécessité
d’effectuer cette requête lors de la conception. Cela illustre une des fonctionnalités des bases
de données, à savoir le fait de ne pas connaître exhaustivement les requêtes à soumettre, et
qu’on peut déduire des informations en rapprochant des faits élémentaires entre eux.
Contrôle des données
Dans un contexte multi-utilisateur, SQL a dû s’adapter pour :
●
contrôler l’accès aux données (privilèges en lecture, modification ou suppression) contenues
dans les tables ;
●
assurer la confidentialité et l’intégrité des informations. La confidentialité est souvent réalisée
par l’utilisation de vues (views).
Attribution de privilèges
Les instructions SQL qui définissent les privilèges sur les données sont fondées sur les directives
GRANT (pour autoriser) et REVOKE (pour interdire).
Exemple
Tableau 3.2 Privilèges
Utilisateur Soutou
Utilisateur Tremont
Soutou désire autoriser l’utilisateur Tremont à lire
la table Pilote et à modifier la colonne age.
Tremont autorise l’utilisateur Soutou à lire et à
insérer des enregistrements dans la table
Compagnie.
Tremont désire interdire désormais à
l’utilisateur Soutou d’insérer des
enregistrements dans la table Compagnie.
Pilote
brevet
nom
age
compa
3MPY93
Soutou
36
CAST
16AGN65
Bidal
36
CAST
30MPY67
Lamothe
34
CAST
25MPY67
Albaric
34
AF
Compagnie
comp
nom_comp
AF
Air France
CAST
Castanet Air Lines
