Institut Supérieur d'Informatique et de Mathématiques de Monastir
SERIE DE TD N° 2
Langage de Requêtes SQL
Sections : LF2 et LA2 Informatique Matière : SGBD
Exercice 1 : Création des tables
Une entreprise d é s i r e gérer son parc informatique à l’aide d’une base de
données. Le b â t i m e n t est composé de trois étages. Chaque étage possède son
réseau (ou segment distinct) Ethernet. Ces réseaux traversent des salles équipées
de postes de travail. Un p o s t e de travail est une machine sur laquelle sont
installés certains logiciels. Quatre catégories de postes de travail sont recensées
(stations Unix, t e r m i n a u x X, PC Windows et PC NT). La base d e données devra
aussi décrire les installations de logiciels.
Question : Écrivez un s c r i p t SQL p e r m e t t a n t de créer les tables définies par le
schéma relationnel ci-dessous avec l e u r s clés primaires et étrangères et les
contraintes suivantes :
- Les noms des segments, des salles, des logiciels et des postes sont non nuls.
- Le domaine de valeurs de la colonne ad s’étend de 0 à 255.
- La colonne prix est supérieure ou égale à 0.
- La colonne dateIns est égale à la date du jour par défaut.
Le schéma relationnel relatif au système d’information :
Types (codeType, libelleType)
Segment (indIP, nomSegment, etage)
Salle (nSalle, nomSalle, nbPostes, indIP#)
Poste (nPoste, nomPoste, ad, typePoste, nSalle#)
Logiciel (nLog, nomLog, dateAch, version, typeLog, prix)
Installation (nPoste#, nLog#, numIns, dateIns)
Page 1/3
Les noms et les types des colonnes (champs)sont décrits par le tableau suivant :
Colonne Description Types
indIP Les trois premiers groupes IP (exemple : VARCHAR2(11)
130.120.80)
nomSegment Le nom du segment VARCHAR2(20)
etage L’étage du segment NUMBER(2)
nSalle Le numéro de la salle VARCHAR2(7)
nomSalle Le nom de la salle VARCHAR2(20)
nbPoste Le nombre de postes de travail dans la salle NUMBER(2)
nPoste Le code du poste de travail VARCHAR2(7)
nomPoste Le nom du poste de travail VARCHAR2(20)
ad Le dernier groupe de chiffres IP (exemple : 11) VARCHAR2(3)
typePoste Le type du poste (Unix, TX, PCWS, PCNT) VARCHAR2(9)
dateIns La date d’installation du logiciel sur le poste DATE
nLog Le code du logiciel VARCHAR2(5)
nomLog Le nom du logiciel VARCHAR2(20)
dateAch La date d’achat du logiciel DATE
version La version du logiciel VARCHAR2(7)
typeLog Le type du logiciel (Unix, TX, PCWS, PCNT) VARCHAR2(9)
prix Le prix du logiciel NUMBER(6,2)
numIns Le numéro séquentiel des installations NUMBER(5)
dateIns La date d’installation du logiciel DATE
codeType Les types des logiciels et des postes VARCHAR2(9)
libelleType Les libellés des types (Terminaux X, PC VARCHAR2(20)
Windows…)
Page 2/3
Exercice 2 : Ajout de colonnes
Écrivez un s c r i p t SQL contenant les instructions nécessaires pour ajouter les
colonnes suivantes :
Table Nom, type et signification des nouvelles colonnes
Segment nbSalles NUMBER(2) : nombre de salles d’un segment.
nbPostes NUMBER(2) : nombre de postes d’un segment.
Logiciel nbInstall NUMBER(2) : nombre d’installations
d’un logiciel.
Poste nbLog NUMBER(2) : nombre de logiciels installés sur un
poste.
Exercice 3 : Modification de colonnes
Écrivez un script SQL contenant les instructions nécessaires pour :
- Augmenter la taille dans la table Salle de la colonne n o m S a l l e (passer à
VARCHAR2(30)) ;
- Diminuer la t a i l l e dans la t a b l e Segment de l a c o l o n n e nomSegment à
VARCHAR2(15) ;
Parmi ces deux modifications laquelle peut produire une erreur ? Et pourquoi ?
Page 3/3