USTHB/FEI/ Département Informatique TP Base de Données 2 année Licence
TP N° 2 : Création des tables et des indexes
Le Langage SQL
SQL " Structured Query Language" est à la fois un langage de :
LDD (Langage de Définition de Données): ensemble d‟instructions permettant de créer des
tables, des indexes, des vues et d‟associer à une définition des contraintes.
LMD (Langage de Manipulation de Données) : ajout, suppression, modification et interrogation
des données
LCD (Langage de Contrôle de Données) : gestion des protections d‟accès.
Tâche 1: Analyse du fichier [Link]
1. Lancer l‟interpréteur SQLPlus (Utilisateur : system, mot de passe : orcl1),
2. Après vérification du nom d‟utilisateur et du mot de passe, l‟invite SQL > s‟affiche, alors il est
possible de lancer l‟ensemble des commandes SQL qui seront associées à cet utilisateur.
3.Télécharger les fichiers "[Link]" et "[Link]" à partir du site :
[Link]
4. Ouvrir le fichier [Link] avec Notepad++.
5. Écrire et sauvegarder toutes les instructions SQL dans un fichier ayant l‟extension « .sql » avec le
logiciel NOTEPAD++ et sélectionner le type du langage (SQL) dans le menu « Langage » de
NOTEPAD++.
6. Lancer un spool dans le répertoire c:/TPBDD.
7. Exécuter le fichier [Link].
8. Vérifier que toutes les instructions SQL du fichier [Link] ont été interprétées par
SQLPLUS. Ces instructions sont elles des LMD, LDD ou LCD?
________________________________________________________________________
9. Quelles sont les différentes tables de cette base de données, préciser leurs attributs en utilisant la
commande SQLPlus "DESCRIBE", quelles sont les clés primaires?
________________________________________________________________________
________________________________________________________________________
Page 9 sur 74
USTHB/FEI/ Département Informatique TP Base de Données 2 année Licence
____________________________________________________________________________
____________________________________________________________________________
___________________________________________________________________________
___________________________________________________________________________
10. Quelles sont les relations entre ces tables?
__________________________________________________________________________
__________________________________________________________________________
__________________________________________________________________________
11.A quoi servent les indexes crées dans cette base de données? Quels sont ces indexes?
________________________________________________________________________
________________________________________________________________________
Tâche 2: Création de tables avec contraintes d'intégrités
1. Ajouter les tables ci-dessous à la base de données de la tâche1.
2. Ajouter la table SEANCE avec les attributs ci-dessous sans oublier les contraintes d'intégrités.
o TITRE Chaîne de 40 caractères not null (clé primaire et clé étrangère avec la table film)
o NOM_SALLE not null Chaîne de 30 caractères, (clé primaire)
o HEURE_DEBUT entier, not null (clé primaire)
o VERSION Chaîne de 10 caractères.
3. Ajouter la table VU avec les attributs ci-dessous sans oublier les contraintes d'intégrités.
o NOM_SPECTATEUR Chaîne de 30 caractères not null, (clé primaire),
o TITRE Chaîne de 40 caractères not null (clé primaire et clé étrangère avec la table film)
4. Ajouter la table AIME avec les attributs ci-dessous:
o NOM_AMATEUR Chaîne de 30 caractères,
o TITRE Chaîne de 20 caractères.
5. Les instructions SQL de création des tables SEANCE, AIME et VU doivent être ajoutées et
sauvegardées dans le fichiers [Link].
6. Créer un synonyme de la table SEANCE.
Page 10 sur 74
USTHB/FEI/ Département Informatique TP Base de Données 2 année Licence
Tâche 3: Création d'indexes
1. Créer un index pour la table SEANCE sur l‟attribut TITRE dans l‟ordre croissant.
2. Créer un index pour la table VU sur l‟attribut TITRE dans l‟ordre décroissant.
3. Créer un index pour la table AIME sur l‟attribut TITRE dans l‟ordre croissant.
4. Les instructions SQL de création des indexes précédents doivent être ajoutées et sauvegardées
dans le fichiers [Link].
Tâche 4: Modification du schéma et des contraintes
Toutes les instructions SQL ci-dessous doivent être ajoutées et sauvegardées dans le fichiers
[Link].
1. Modifier le type de l‟attribut TITRE de la table AIME de manière à l'augmenter de 20 caractères.
2. Ajouter une contrainte sur la table SEANCE pour que HEURE_DEBUT soit toujours supérieure à
13,
3. Ajouter une contrainte sur la table SEANCE pour que NOM_SALLE soit "IBN ZAIDOUN" ou
"IBN KHALDOUN".
4. Ajouter une contrainte sur la table SEANCE pour que VERSION soit par défaut "VO" ie version
originale.
5. Ajouter une contrainte sur la table AIME pour que NOM_AMATEUR commence obligatoirement
par "R".
6. Supprimer les 4 contraintes précédentes.
7. Changer le type de l‟attribut HEURE_DEBUT de la table SEANCE au type Chaîne de 6
caractères.
8. Ajouter l‟attribut PRENOM_AMATEUR de type Chaîne de 30 caractères à la table AIME.
9. Supprimer l‟attribut PRENOM_AMATEUR de la table AIME.
10. Retirer la contrainte NOT NULL à l‟attribut HEURE_DEBUT de la table SEANCE.
11. Ajouter la contrainte NOT NULL à l‟attribut HEURE_DEBUT de la table SEANCE.
12. Ajouter les attributs NOM_AMATEUR et TITRE de la table AIME comme clés primaires.
13. Ajouter l'attribut TITRE de la table AIME comme clé étrangère avec la table film.
14. Supprimer les clés primaires et étrangère de la table VU.
15. Remettre les clés primaires et étrangère de la table VU.
Page 11 sur 74