
MSBM 2002-2003
Comme nous l'avons sous ACCESS, le langage de définition des données permet d'activer ou de désactiver une
contrainte. Ceci se fait de la façon suivante :
ACTIVATION : ALTER TABLE nom_table ENABLE CONSTRAINT nom_contrainte;
DESACTIVATION : ALTER TABLE nom_table DISABLE CONSTRAINT nom_contrainte;
5 MISE A JOUR DES DONNEES
Maintenant que nous avons créé le schéma de la base, il faut y insérer des données, les mettre à jour et,
pourquoi pas en supprimer. Pour cela, vous allez créer un script fait d'une suite de d'instructions du type suivant
:
instruction d'insertion
INSERT INTO nom_table VALUES (val_att1, val_att2, ......, val_atti, ......., val_attn);
instruction de modification
UPDATE nom_table SET atti = new_val WHERE attj = une_valeur;
instruction de suppression
DELETE FROM nom_table WHERE attj = une_valeur;
Pour vous inspirer, vous trouverez à l'adresse
http://www.lirmm.fr/~berasalu/enseignements/MSBM/TP/TP3_ACCESS/
des exemples de tuples à insérer.
Quelle instruction (SQL) feriez-vous pour augmenter le salaire de tous les employés agés de plus de 50 ans de
10% ?
Quelle instruction (SQL) feriez-vous pour supprimer les sociétés dont le siège social se trouvent à Paris ? Quel
sera le résultat de l'exécution de cette instruction ?
6 INTERROGATION DE LA BASE
Nous avons déjà vu ensemble des exemples de requêtes SQL dans les TD 3 et 4.
Nous allons maintenant interroger la base de données construite. Les requêtes suivantes exprimées en français
sont à traduire en algèbre relationnelle (lorsque c'est possible) puis en SQL.
1. Donner les noms et matricules des employés de la société de code Siret 5.
2. Donner les noms et matricules des employés de la société Bayer Pharma.
3. Donner les noms et matricules des employés des sociétés Bayer Pharma, Pierre Fabre, Biogalénique et
Sanofi Synthelabo.
4. Lister les ARCs (noms et matricules) spécialisés en cardiologie.
5. Lister les ARCs (noms et matricules) qui ont été embauchés entre 1990 et 1992.
6. Donner la liste des pathologies triée par ordre alphabétique.
7. Donner les sociétés dont le siège social se trouve à Paris.
8. Donner le nombre de médicaments décrits dans la base de données.
9. Donner pour chaque société le nombre de molécules actives mises au point.
10. Donner les sociétés qui ont mis au point au moins deux molécules actives.
11. Quelle est la société qui a le plus de molécules actives à son actif ?
12. Quelles sont les molécules actives qui ont un rôle thérapeutique dans l'hypertension artérielle ?
13. Combien de molécules actives ont un rôle dans l'hypertension artérielle?
14. Quels sont les médicaments qui sont impliqués dans le traitement de l'hypertension artérielle ?
15. Quelles sont les molécules qui ont un rôle thérapeutique dans au moins deux pathologies ?
16. Quelles sont les molécules qui agissent à la fois sur la grippe et sur le syndrome de Kawasaki ?
17. Quelles sont les pathologies qui peuvent être soulagées par plusieurs molécules actives ?