Vous êtes sur la page 1sur 2

Université Abdelhamid Ibn Badis – Mostaganem 2020/2021

1er Master ISI / ReSys Matière : Base de données Avancées

TP N°1 (Base de données Avancées)

Objectif : apprendre à créer, manipuler et interroger une BD sous Oracle.

Première connexion :

- à la fin de l’installation, oracle 10 g créait une base de données dont le nom (nom de service):
ORCL.

- pour connecter à la base ORCL vous utiliserez un compte administrateur dont le nom : sysman. Et
concernant le Mot de Passe vous utiliserez le mot de passe que vous avez donné au moment de
l’installation. Mot de passe : admin.

Etapes :

1. ouvrir SQLPLUS via : menu démarrer / tous les programme/ Oracle - OraDb10g_home1/
Développement d'applications/ SqlPlus.

2. Connectez-vous à la base en tant qu’administrateur: Nom utilisateur : sysman & Mot de


passe : admin

3. Création d’un nouvel utilisateur :

CREATE USER nom_de_votre_utlisateur IDENTIFIED BY votre_mot_de_passe;

GRANT DBA TO nom_de_votre_utlisateur; --Donner (des privilèges administrateur) la permission à


l’utilisateur de se connecter et à manipuler la base de données

3. CONNECT nom_de_votre_utlisateur; --Pour vous connecter à votre compte utilisateur.

Énoncé :

Soit la base de données suivante :

Client (Id_client, nom_client, prénom_client, date_naiss).

Livre (ref_livre, titre_livre, auteur, prix).

Vente (id_client*, ref_livre*, qte_vendue, date_de_vente).

1. Commencez par Créer les 3 tables en utilisant la requête :


a. CREATE TABLE nom_de_la_table (champ1 type, champ2 type,….) ;
b. Utilisez les types : number, date, varchar2(n)
c. Déterminez les clés primaires et étrangères, et insérez les contraintes correspondantes.

ALTER TABLE nom_table ADD CONSTRAINT nom_contrainte PRIMARY KEY(nom_clé) ;

ALTER TABLE nom_table ADD CONSTRAINT nom_contrainte FOREIGN KEY(nom_clé)


REFERENCES nom_table_référencé(nom_clé_référencée);

2. Remplissez les tables avec les données suivantes en utilisant la requête:


a. INSERT INTO nom_de_la table VALUES (‘valeur1’,’valeur2’,…) ;
b. Pour valider les insertions, utiliser la commande COMMIT ;

Z.Maghni Sandid
1
Université Abdelhamid Ibn Badis – Mostaganem 2020/2021
1er Master ISI / ReSys Matière : Base de données Avancées

Client :

Id_client Nom_client Prénom_client Date_naiss


01 MOKHTARI Mohamed 03/07/1986
02 BENHMED Sarah 24/07/1984
03 CHETTAB Nadia 28/01/1988
04 SAID Amine 12/10/1990

Livre

Ref_livre Titre_livre Auteur Prix


Liv1 S'initier à la programmation et C Delannoy 2461,96
à l'orienté objet
Liv2 Linux Administration - Tome J-F Bouchaudy 2909,58
4
Liv3 AutoCAD 2014 J-P Couwenbergh 4028,66
Liv4 jQuery-Ajax avec PHP J-M Defrance 4364,38

Vente

Id_client Ref_livre Qte_vendue Date_de_vente


01 Liv1 2 13/10/2013
01 Liv3 1 18/07/2013
02 Liv1 3 18/07/2013
03 Liv2 1 01/05/2013
03 Liv3 2 01/05/2013
04 Liv1 1 12/02/2013
04 Liv2 1 12/02/2013
04 Liv3 1 08/04/2013

Utilisez une requête SQL pour répondre à chaque question :

1. Donner le nombre des livres.


2. Quelles sont parmi tous les prix : le prix le plus haut, le prix le plus bas, la moyenne de tous
les prix ?
3. Donner la liste des livres achetés par chaque client avec le prix d’achat (prix*quantité).
4. Afin d’utiliser les résultats d’une requête avec des fonctions d’agrégations comme AVG,
MIN, MAX ou les formules mathématiques il est préférable de nommer ces champs en
utilisant dans votre requête le mot réservé «AS» : a. Ex : SELECT NOM, PRENOM,
AVG(NOTE) AS MOYENNE FROM.
5. Réécrivez la requête N°4 en nommant le champ calculé par « prix d’achat ».
6. Afficher les livres et leurs prix.
7. Créer la vue dynamique pour la requête N°6 (CREATE VIEW NOM_DE_LA_VUE AS
VOTRE_REQUETE).
8. Pouvez-vous insérer, modifier ou supprimer les données de la vue dynamique créé.
9. Modifiez le prix de liv1 à « 7000», est ce que le contenu de la vue dynamique a changé ?
UPDATE nom_table SET champ=’nouvelle valeur’ WHERE la ligne sélectionnée;

Z.Maghni Sandid
2

Vous aimerez peut-être aussi