Vous êtes sur la page 1sur 5

TP 1 : Environnement Oracle

Prof : M.Saddoune

I- Objectif de ce travail pratique


Dans ce travail pratique, l'objectif est de vous familiariser avec l'environnement Oracle et plus
précisement SQL*Plus.

II- Contenu
Exercice 1 : Premières commandes à utiliser
a) Pour savoir les tables et les vues dans le schéma HR, utiliser la requête suivante :
SELECT *
FROM tab

b) Pour décrire une table, vue, on utilise la commande DESCRIBE nomTableOuVue, Vous
pouvez abréger cette commande en utilisant DESC, DESCR ou DESCRIB

c) Quelle est le rôle de la table DUAL.

d) Quelle est la différence entre TABLE et VIEW ?

Exercice 2 : Manipulation de la mémoire-tampon (buffer)


La requête la plus récente est stockée dans une mémoire-tampon (buffer) SQL de SQL*Plus.

a) RUN : cette commande permet de relancer la dernière requête qui se trouve dans le
buffer. Pour l'abréger, vous pouvez utiliser tout simplement / ou r.

b) LIST : cette commande liste le contenu de la mémoire-tampon. L'astérisque indique la


ligne courante. Vous pouvez abréger cette commande par L. La commande LIST m n permet
d'afficher les lignes m jusqu'à n. La commande LIST LAST affiche la dernière ligne.

1
c) APPEND : La commande APPEND texte ajoute texte à la fin de la ligne. La commande
abrégée est A.

d) CHANGE : La commande CHANGE /old/new permet de remplacer old par new. Si vous
omettez new, old va être supprimée. Cette commande peut être abrégée par la lettre C.

e) INPUT : La commande INPUT texte ajoute une ligne de texte. Son abréviation est I.

f) DEL : Cette commande supprime la ligne courante. La commande DEL m n supprime les
lignes m jusqu'à la ligne n.

g) CLEAR BUFFER : Cette commande permet de supprimer toutes lignes de la mèmoire


tampon.

Exercice 3 : Utilisation des fichiers scripts


SQL*Plus fournit des commandes pour enregistrer la mémoire-tampon dans un fichier. Les
instructions SQL enregistrées dans un fichier constituent un fichier script.
− Pour enregistrer un buffer dans un fichier, utiliser la commande SAVE fileName.
L'extension par défaut du fichier sera .sql.
− Pour ajouter le buffer à la fin d'un fichier existant, utiliser la commande SAVE
fileName APPEND.
− Vous pouvez éditer votre fichier en utilisant la commande EDIT fileName.
− Vous pouvez ramener le contenu d'un fichier script dans un buffer en utilisant la
commande GET fileName.
− L’exécution d'un fichier script peut se faire à travers la commande START
fileName ou @fileName

Exercice 4

1. Est ce que les commandes SQL*Plus permettent d'accéder à la base de données ?

2. Est ce que l'instruction SELECT suivante s'exécute sans erreur ?


SELECT last_name, job_id, salary AS Sal
FROM employees;

3. Est ce que l'instruction SELECT suivante s'exécute sans erreur ?


SELECT *
FROM job_grades;

4. Pouvez-vous identifier les erreurs qui existent dans cette requête.


SELECT employee_id, last_name sal x 12 ANNUAL SALARY
FROM employees;

5. Affichez la structure de la table DEPARTMENTS. Sélectionnez toutes les données de


cette table.

2
6. Affichez la structure de la table EMPLOYEES. Créez une instruction pour
afficher le nom, l'ID de poste, la date d'embauche et le numéro de chaque employé, en
plaçant le numéro d'employé en premier. Définissez un alias STARTDATE pour la
colonne HIRE_DATE.

7. Créez une instruction afin d'afficher toutes les données de la table


EMPLOYEES. Séparez les colonnes par des virgules. Nommez la colonne obtenue
THE_OUTPUT.

Exercice 5 : Modélisation des requêtes SQL


1. Créez une instruction destinée à afficher le nom et le salaire des employés gagnant
plus de 12000$. Enregistrez l'instruction SQL créée dans un fichier texte nommé
lab2_1.sql, puis exécutez-la.

2. Créez une instruction destinée à afficher le nom et le numéro de service de l'employé


dont le numéro est 176.

3. Modifiez le fichier lab2_1.sql pour afficher le nom et le salaire de tous les employés dont
le salaire n'est pas compris entre 5 000 $ et 12 000 $. Enregistrez votre instruction
SQL dans un fichier texte nommé lab2_3.sql.
4.

3
4. Affichez le nom, l'ID de poste et la date d'entrée des employés embauchés entre le 20
février et le 1er mai 1998. Classez le résultat par date d'embauche croissante.

5. Affichez le nom et le numéro de service de tous les employés des services 20 et 50,
classés par ordre alphabétique des noms.

6. Modifiez le fichier lab2_3.sql pour répertorier le nom et le salaire des employés qui
gagnent entre 5 000 $ et 12 000 $ et qui appartiennent au service 20 ou 50. Nommez
les colonnes Employee et Monthly Salary respectivement. Enregistrez à nouveau le
fichier lab2_3.sql sous le nom lab2_6.sql, puis exécutez l'instruction du fichier
lab2_6.sql.

7. Affichez le nom et la date d'embauche de chaque employé entré en 1994.

8. Affichez le nom et l'ID de poste de tous les employés qui n'ont pas de manager.

9. Affichez le nom, le salaire et la commission de tous les employés qui perçoivent des
commissions. Triez les données dans l'ordre décroissant des salaires et des

4
commissions.

10. Affichez le nom de tous les employés dont la troisième lettre du nom est un a.

11. Affichez le nom de tous les employés dont le nom comporte un a et un e.

12. Affichez le nom, le poste et le salaire de tous les représentants ou magasiniers dont le
salaire est différent de 2 500 $, 3 500 $ ou 7 000 $.

13. Modifiez le fichier lab2_6.sql pour afficher le nom, le salaire et la commission de tous
les employés dont la commission est de 20%. Enregistrez le fichier lab2_6.sql sous le
nom lab2_13.sql, puis exécutez à nouveau l'instruction de lab2_13.sql.