Vous êtes sur la page 1sur 2

Année Universitaire: 2023/2024

TP2 Section: LGSI2


Matière: Administration des bases de données
Enseignante responsable : Leila Ghorbel
Enseignantes tp :Asma Bahba, Manel Mili

Objectifs:
• Création de tables
• Modification de la structure d’une table
• Suppression de tables

Exercice1:
Soit la base de données relationnelle suivante :
Vehicule (NUMV : numérique de taille 8, Puiss : caractère de taille 10, Marque : caractère
de taille 10, Kilom : numérique de taille 10)
Service (NUMS : numérique de taille 4, Libelle : caractère de taille 20)
Employe (NUME : numérique de taille 4, Nom : caractère de taille 20, Indemnite :
numérique de taille 7 dont 3 après la virgule, Salaire : numérique de taille 7 dont 3 après la
virgule, ville : caractère de taille 10, NUMS*)
Mission (NUMM : numérique de taille 4, Libelle : caractère de taille 20)
Voyage (NUMV*, NUMM*, NUME*, date_depart : type date, KilomA : numérique de
taille 10)

Créer les tables ci-dessus en prenant en considération les contraintes d’intégrité ainsi que des
conditions suivantes :

a. Le salaire de l’employé doit être compris entre 500 et 2000.


b. Les numéros de services possibles sont 1, 2, 3 et 4.
c. L’indemnité doit être positive et non nulle.
d. Le champ Libelle de la table mission ne peut être vide.

Exercice 2:
1. Créez une table nommée Employes avec les colonnes suivantes :

ID_Employe (clé primaire)


Nom (varchar)
Prenom (varchar)
Date_Naissance (date)
Adresse (varchar)
2. Créez une table nommée Departements avec les colonnes suivantes :

ID_Departement (clé primaire)


Nom_Departement (varchar)
3. Créez une table de liaison Affectations pour suivre les affectations des employés à différents
départements. Cette table devrait avoir les colonnes suivantes :

1
ID_Affectation (clé primaire)
ID_Employe (clé étrangère liée à la table Employes)
ID_Departement (int)
Date_Debut (date)
Date_Fin (date)

4. Ajoutez une colonne Salaire à la table Employes pour stocker le salaire de chaque employé.
5. Ajoutez une colonne Heures_Travail de type INT à la table Employes pour suivre le nombre
d'heures travaillées par semaine.
6. Ajoutez une contrainte CHECK à la table Employes pour s'assurer que le salaire est toujours
supérieur à 0.
7. Modifiez la structure de la table Affectations pour inclure une colonne Statut qui peut
prendre les valeurs 'Actif' ou 'Inactif' pour indiquer si l'affectation est en cours ou terminée.
8. Ajoutez une clé étrangère à la table Affectations pour assurer que les employés ne peuvent
être affectés qu'à des départements existants.
9. Ajoutez une contrainte UNIQUE à la colonne Nom de la table Departements pour garantir
que les noms de départements sont uniques.
10. Ajouter une contrainte UNIQUE sur (ID_Employe, ID_Departement, Date_Debut) pour
permettre plusieurs affectations simultanées pour un même employé et département à partir
de différentes dates.
11. Supprimez la colonne Date_Fin de la table Affectations
12. Supprimez la table Affectations de la base de données.
13. Supprimez la colonne Adresse de la table Employes.

Vous aimerez peut-être aussi