Faculté des sciences
Département d’Informatique Année universitaire : 2021/2022
TD 1
Exercice 1. Créer la table : « MEMBER » en se basant sur le tableau ci-dessous. Choisissez
les types de données appropriés en ajoutant les contraintes d'intégrité correspondantes.
Colonne MEMBER_ID LAST_NAME FIRST_NAME ADDRESS CITY PHONE JOIN_DATE
Type de clé PK
Null/ Unique NN, U NN NN
Valeur par Date
défaut Système
Type Number Varchar2 Varchar2 Varchar2 Varchar2 Varchar2 Date
Longueur 10 25 25 100 30 15
Exercice 2. Soit les tables des employés et départements (resp. Emp et Dept) suivantes :
Emp (empno , ename, job, sal, mgr, deptno)
Dept (deptno dname, loc)
- Ecrire les requêtes SQL suivantes pour afficher :
a. Le nom, le nom du département pour les employés dont le nom contient la lettre A
b. Le nom, le poste, le numéro de département et le département de tous les
employés basés à RABAT.
c. Le salaire minimum, le salaire maximum, la somme des salaires et le salaire moyen
pour chaque type de poste. Arrondissez les résultats à zéro décimale
d. Le matricule des différents managers et le niveau de salaire le plus bas de leurs
employés. Excluez toute ligne où le manager n'est pas identifié. Excluez tout
groupe dans lequel le salaire minimum est inférieur à 2000 DH. Triez les résultats
par ordre décroissant des salaires.
e. Le nom du département, la localisation, le nombre d'employés et le salaire moyen
pour tous les employés de ce département.
Exercice 3. Soit les tables des vendeurs, des clients et des commandes (resp. Salesman et
Customer, Orders) suivantes:
Salesman (salesman_id, name, city, commission)
Customer (customer_id, cust_name, city, grade, salesman_id)
Orders (ord_no, purch_amt, ord_date, customer_id, salesman_id)
- Ecrire les requêtes SQL suivantes pour :
a. Trouver les vendeurs qui n'habitent pas dans la même ville que leurs clients et qui
ont reçu de la société une commission supérieure à 12 %. Retournez le nom du
client, la ville du client, le vendeur, la ville du vendeur, la commission.
b. Etablir une liste par ordre croissant des vendeurs qui travaillent pour un ou plusieurs
clients ou qui ne sont pas encore rattachés à l'un des clients.
c. Créer le produit cartésien entre le vendeur et le client, : Chaque vendeur apparaît
pour tous les clients et vice versa pour le vendeur qui appartient à une ville.
- Créer une vue pour compter le nombre de clients uniques, calculer le montant moyen et
total des achats des commandes des clients pour chaque date.
- Créez une vue pour trouver les vendeurs qui s'occupent de plus d'un client. Retournez tous
les champs du vendeur.
Exercice 4.
- Créer un utilisateur ACHRAF et lui attribuer les droits de créer une session et de
sélectionner des données dans la table STOCK.
- Attribuer à tous les utilisateurs le droit de sélectionner des données dans la table STOCK.
- Attribuer des droits à l’utilisateur ACHRAF afin qu’il puisse modifier dans la table STOCK
uniquement les colonnes ARTICLE et QTE.
BDII - Pr. M.E.H CHARAF