Académique Documents
Professionnel Documents
Culture Documents
I- Introduction .................................................................................................................. 4
II- Pré-requis ..................................................................................................................... 4
III- Compétences cibles .................................................................................................. 4
IV- Résultats d’apprentissage attendus ............................................................................ 5
V- Modalités d’évaluation des apprentissages .................................................................... 6
Atelier 1 : Familiarisation avec le SGBD Oracle et son environnement de travail
SQL*Plus ................................................................................................................................ 7
I- Objectifs ....................................................................................................................... 7
II- Présentation et historique d’Oracle ............................................................................... 7
III- Enoncé ..................................................................................................................... 8
Atelier 2 : Découvrir et manipuler le langage SQL (LDD) ................................................. 15
I- Objectifs ..................................................................................................................... 15
II- Présentation du langage SQL ...................................................................................... 15
III- Enoncé ................................................................................................................... 15
Atelier 3 : Apprendre à interroger la base de données avec la commande SELECT (LID)
.............................................................................................................................................. 18
I- Objectifs ..................................................................................................................... 18
II- Éléments du contenu................................................................................................... 18
III- Enoncé ................................................................................................................... 18
Atelier 4 : Les Fonctions d’Oracle ....................................................................................... 21
I- Objectifs ..................................................................................................................... 21
II- Éléments du contenu................................................................................................... 21
III- Exercice 1 ............................................................................................................... 21
IV- Exercice 2 ............................................................................................................... 22
Atelier 5 : Les Fonctions d’agrégation (ou de groupe) d’Oracle ........................................ 23
I- Objectifs ..................................................................................................................... 23
II- Éléments du contenu................................................................................................... 23
III- Exercice 1 ............................................................................................................... 23
Houneida HADDAJI 1
IV- Exercice 2 ............................................................................................................... 24
Atelier 6 : Utilisation des Jointures avec SQL .................................................................... 25
I- Objectifs ..................................................................................................................... 25
II- Présentation des jointures ........................................................................................... 25
III- Exercice 1 ............................................................................................................... 25
IV- Exercice 2 ............................................................................................................... 26
Atelier 7 : Les sous-requêtes avec SQL ............................................................................... 27
I- Objectifs ..................................................................................................................... 27
II- Présentation des sous-requêtes .................................................................................... 27
III- Exercice.................................................................................................................. 27
Atelier 8 : Les opérateurs ensemblistes ............................................................................... 29
I- Objectifs ..................................................................................................................... 29
II- Présentation des opérateurs ensemblistes .................................................................... 29
III- Exercice 1 ............................................................................................................... 29
IV- Exercice 2 ............................................................................................................... 30
Atelier 9 : Contrôle de Données ........................................................................................... 31
I- Objectifs ..................................................................................................................... 31
II- Présentation du langage de contrôle de données (LCD) ............................................... 31
III- Enoncé ................................................................................................................... 31
IV- Exercice de révision ................................................................................................ 31
Eléments de correction Atelier 2 ......................................................................................... 34
Houneida HADDAJI 2
III. Le Langage de manipulation de données (LMD) .................................................... 44
1- INSERT ..................................................................................................................... 44
2- UPDATE .................................................................................................................... 45
3- DELETE .................................................................................................................... 45
IV. Le Langage de contrôle de données (LCD) .............................................................. 45
I- Présentation ................................................................................................................ 57
II- L’opérateur UNION ................................................................................................... 57
III- L’opérateur UNION ALL ....................................................................................... 58
IV- L’opérateur INTERSECT ....................................................................................... 58
V- L’opérateur MINUS ................................................................................................... 58
Houneida HADDAJI 3
Plan de cours : Atelier Bases de Données
I- Introduction
II- Pré-requis
Les pré-requis pour cet atelier sont les unités d’enseignement suivantes :
A l’issue de cet atelier, l’étudiant sera capable d’appliquer correctement les aspects théoriques
des cours dans un cadre pratique de création et de manipulation de bases de données, et
découvert la puissance du langage SQL pour manipuler les données.
Houneida HADDAJI 4
Être en mesure d'écrire des requêtes compatibles avec plusieurs SGBD.
Le tableau ci-dessous présente la répartition des différents TPs et les résultats d’apprentissage
attendus :
Houneida HADDAJI 5
V- Modalités d’évaluation des apprentissages
C’est une note attribuée suite à un examen de travaux pratiques effectuée à la fin de semestre.
Cette note, qui comporte 50% de la note finale, permet d’évaluer la capacité de l’étudiant à :
Manipuler des données (insertion, mise à jour et suppression) dans une base de données
créée sous Oracle.
Cette note, qui comporte 50% de la note finale, permet d’évaluer la capacité de l’étudiant à :
Houneida HADDAJI 6
Atelier Bases de Données Atelier 1
I- Objectifs
1
Plus de détails sur : https://www.oracle.com/fr/database/
2
Plus de détails sur : https://fr.wikipedia.org/wiki/Oracle_Database#Historique
Houneida HADDAJI 7
Atelier Bases de Données Atelier 1
o 2005 : Oracle 10g Express Edition : Version gratuite de Oracle 10g, mais bridée
en nombre de processeurs, d’enregistrements (4Go) et de mémoire (1Go).
L’objectif est d’entrer sur le marché des PME sensibles aux coûts et à l’open
source.
o 2007 : Oracle 11g : Amélioration de la version 10g en termes de performance et
de facilité d’administration.
o 2009 : Oracle achète Sun Microsystems (Java) qui avait acheté MySQL en 2008.
o 2013 : Oracle Database 12c (c pour le Cloud).
o 2017 : Oracle Database 18c : qui utilise le Machine Learning pour automatiser la
protection et la gestion de données.
o 2019 : Oracle Database 19c : qui inclut beaucoup d’innovation sur les opérations
d’optimisation du coût et des données, avec diagnostic et amélioration du
performance et gestion automatique des opérations du Cloud.
L’édition Express comporte toutes les fonctionnalités de base permettant de mettre en œuvre
des applications client-serveur ou Internet/Intranet, pour un groupe de travail ou un
département d’entreprise. Cette édition ne permet pas de faire fonctionner les options
avancées d’Oracle11g. L’édition Entreprise est plus particulièrement destinée aux
applications critiques de l’entreprise.
Oracle 11g propose plusieurs outils d’administration, parmi ces outils nous citons
principalement :
III- Enoncé
Houneida HADDAJI 8
Atelier Bases de Données Atelier 1
1- Cliquer sur « Accéder à la page d’accueil de la base de données » du menu démarrer puis
entrer le nom d’utilisateur système et le mot de passe suivants :
Nom utilisateur : system
Mot de passe : system
3- Cliquer sur Navigateur d’objet / Parcourir / Table pour visualiser les différentes tables.
Houneida HADDAJI 9
Atelier Bases de Données Atelier 1
4- Cliquer maintenant sur « Exécuter la ligne de commande SQL » du menu démarrer. A partir
de cette ligne établir une connexion à la base HR.
Houneida HADDAJI 10
Atelier Bases de Données Atelier 1
SQL>connect hr/hr
8- Revenant maintenant à l’interface graphique d’Oracle client 11g Express Edition. Etablir une
connexion avec l’utilisateur System / system. Cliquer sur Administration / Créer un utilisateur
pour créer l’utilisateur vente avec le mot de passe vente :
Houneida HADDAJI 11
Atelier Bases de Données Atelier 1
Vous pouvez entrer la ligne suivante à partir de l’invite SQL> pour créer l’utilisateur vente
avec le mot de passe vente :
9- On désire créer une base de données nommée Vente dont le schéma relationnel est le
suivant :
Houneida HADDAJI 12
Atelier Bases de Données Atelier 1
-- ============================================================
-- Table : Client
-- ============================================================
create table Client
(
CodC NUMBER(4) not null,
NomC VARCHAR2(20),
CréditC NUMBER(8,3),
AdresseC VARCHAR2(15),
constraint cp_CodC primary key (CodC)
);
-- ============================================================
-- Table : Commande
-- Avec une clé étrangère CodC
-- ============================================================
create table Commande
(
NumC NUMBER(4) not null,
CodC NUMBER(4) not null,
MontC NUMBER(7,3),
DATC DATE,
constraint cp_NumC primary key (NumC)
Houneida HADDAJI 13
Atelier Bases de Données Atelier 1
);
-- ============================================================
-- Table : Facture
-- Avec une clé étrangère CodC
-- ============================================================
create table Facture
(
NumF NUMBER(4) not null,
CodC NUMBER(4) not null,
MontF NUMBER(8,3),
DATF DATE,
constraint cp_NumF primary key (NumF)
);
-- ============================================================
-- Table : PC
-- ============================================================
create table PC
(
CodP NUMBER(4) not null,
NumC NUMBER(4) not null,
QteC NUMBER(4),
constraint cp_PC primary key (CodP, NumC)
);
Houneida HADDAJI 14
Atelier Bases de Données Atelier 2 : Le langage SQL
I- Objectifs
Manipuler le langage de définition de données (LDD) de SQL Oracle avec des contraintes en se
basant sur un exemple de base de données.
Voir Annexe1.
III- Enoncé
Cliquer sur « Accéder à la page d’accueil de la base de données » du menu démarrer puis
entrer le nom d’utilisateur :
Nom utilisateur : vente
Mot de passe : vente
Soit la base de données Vente représentée par les tables créées à l’atelier 1 :
A partir de la ligne d’invite SQL de SQL*Plus, formulez les requêtes SQL qui permettent
de répondre aux questions suivantes :
Houneida HADDAJI 15
Atelier Bases de Données Atelier 2 : Le langage SQL
5- Copier le fichier Vente.sql dans votre dossier de travail « C:\BD » (si le dossier n’est pas
créé, il faut le créer).
SQL>start C:\BD\Vente.sql;
Que remarquez-vous?
9- Pour des besoins de suivi des clients, d’autres informations s’avèrent utiles. Modifier la
structure de la table Client en rajoutant les attributs suivants :
10- Modifier l’attribut AdrC de la table Client afin d’avoir une longueur égale à 50.
11- Ajouter une contrainte (ck_Cred) à la table Client afin d’assurer un contrôle lors de
l’introduction des données de l’attribut Cred tel que (Cred <= CredMax).
12- Ajouter les contraintes (ck_Qtes, ck_Seuil, ck_Qtec) aux attributs Qtes, Seuil et Qtec pour
que les valeurs introduites soient positives (>0).
13- Créer un index nommé Ind_NomC pour la table Client sur l’attribut NomC.
14- Créer un index nommé Ind_Lib pour la table Produit sur l’attribut Lib.
15- Insérer les données suivantes dans les tables correspondantes, après avoir supprimer toutes
lignes existantes :
Table Produit :
CodP Lib PU QteS Seuil
2 Ecran 400 15 5
5 Clavier 25 40 10
3 CD-ROM 150 20 3
9 Souris 5 100 20
10 Imprimante 500 50 8
Houneida HADDAJI 16
Atelier Bases de Données Atelier 2 : Le langage SQL
Table Client :
Table Commande :
Table Facture :
Table PC:
Houneida HADDAJI 17