SlideShare une entreprise Scribd logo
1  sur  2
Télécharger pour lire hors ligne
Exercices – PL/SQL 1/1
• la désignation des produits soit écrite en majuscules ;
• le prix unitaire en francs des produits soit converti en Euros. Le prix en Euros devra être entier
(arrondir au supérieur).
Cas particuliers à traiter :
• Si la table PRODUIT est vide, la table PRODUIT2000 devra contenir uniquement le tuple
(0,’Pas de produit’, NULL, NULL).
• Si un prix de la table produit est NULL, son prix en Euros doit être 0.
Indications :
• Considérer que la structure de la table PRODUIT2000 a déjà été créée.
• Tester si la table PRODUIT est vide. Si ce n’est pas le cas, y accéder séquentiellement à l’aide
d’un curseur, effectuer les transformations sur les champs et stocker le résultat dans la table
PRODUIT2000.
• Utiliser les fonctions SQL*Plus UPPER, TRUNC et NVL.
Exercice 2
Pour tenter d’établir une corrélation, on souhaite connaître la différence de quantité moyenne entre les
commandes successivement enregistrées dans la table COMMANDE de la base de données CLIENT-
COMMANDE-PRODUIT-FOURNISSEUR. La table COMMANDE est remplie de commandes va-
luées (c’est-à-dire, pour lesquelles l’attribut QUANTITE n’est pas NULL) ou non. Les commandes non
valuées ne sont pas à prendre en compte. Écrire un programme PL/SQL permettant de calculer la diffé-
rence de quantité moyenne entre les commandes.
Cas particuliers à traiter :
• La table COMMANDE contient moins de deux commandes valuées.
Indications :
• Créer un curseur contenant les quantités de commandes valuées.
• Lire la première quantité puis, pour toutes les quantités suivantes, cumuler la valeur absolue de
quantité courante – quantité précédente (fonction ABS).
• Afficher le résultat dans une exception à l’aide de la procédure RAISE_APPLICATION_ERROR.
Utiliser l’opérateur de concaténation || et la fonction TO_CHAR.
Exercices – PL/SQL Correction 1/2
Correction Exercice 1
-- Creation de la table PRODUIT2000 a partir de la table PRODUIT
DECLARE
euro CONSTANT REAL:=6.55957;
nbprod NUMBER(3);
aucun_produit EXCEPTION;
CURSOR acces IS
SELECT numprod, desi, prixuni, numfour FROM produit;
prod acces%ROWTYPE;
newdesi produit.desi%TYPE;
newprix produit.prixuni%TYPE;
BEGIN
-- Compte des produits
SELECT COUNT(*) INTO nbprod FROM PRODUIT;
-- Si pas de produits, exception
IF nbprod=0 THEN
RAISE aucun_produit;
END IF;
-- Acces sequentiel a la table PRODUIT
-- Remplissage de la table PRODUIT2000
FOR prod IN acces LOOP
newdesi:=UPPER(prod.desi);
newprix:=NVL(prod.prixuni,0);
IF newprix<>0 THEN
newprix:=TRUNC(newprix/euro)+1;
END IF;
INSERT INTO produit2000
VALUES(prod.numprod,newdesi,newprix,prod.numfour);
END LOOP;
-- Validation de la transaction
COMMIT;
EXCEPTION
WHEN aucun_produit THEN
INSERT INTO produit2000
VALUES(0,'Pas de produit',NULL,NULL);
END;
.
/
www.Telechargercours.com
Exercices – PL/SQL
Exercice 1
2001, il est temps de passer à l’Euro pour l’entreprise de VPC dont la base de données
CLIENT-COMMANDE-PRODUIT-FOURNISSEUR sert d’exemple dans le cours. Écrire
un programme PL/SQL permettant de construire, à partir de la table PRODUIT, une table
PRODUIT2000 telle que :
www.TelechargerCours.com
Exercices – PL/SQL Correction 2/2
Correction Exercice 2
-- DIFFERENCE MOYENNE DE QUANTITE ENTRE LES COMMANDES
DECLARE
CURSOR valuees IS
SELECT quantite FROM commande WHERE quantite IS NOT NULL;
cde valuees%ROWTYPE;
prec REAL; -- quantite precedente
cour REAL; -- quantite courante
cumul REAL;
moyenne REAL;
ncv INTEGER;
n INTEGER;
pas_assez EXCEPTION;
resultat EXCEPTION;
BEGIN
-- Test nombre de commandes valuees
SELECT COUNT(*) INTO ncv FROM commande WHERE quantite IS NOT NULL;
IF ncv<2 THEN
RAISE pas_assez;
END IF;
-- Acces 1er tuple
OPEN valuees;
FETCH valuees INTO cde;
prec:=cde.quantite;
-- Acces aux suivants et cumul
cumul:=0;
n:=0;
LOOP
FETCH valuees INTO cde;
EXIT WHEN valuees%NOTFOUND;
cour:=cde.quantite;
cumul:=cumul+ABS(cour-prec);
n:=n+1;
prec:=cour;
END LOOP;
CLOSE valuees;
-- Calcul et affichage de la moyenne
moyenne:=cumul/n;
RAISE resultat;
EXCEPTION
-- Erreur
WHEN pas_assez THEN
RAISE_APPLICATION_ERROR(-20501,'Pas assez de commandes');
-- Resultat
WHEN resultat THEN
RAISE_APPLICATION_ERROR(-20500,'Moyenne = '||TO_CHAR(moyenne));
END;
.
/
www.TelechargerCours.com

Contenu connexe

Tendances

TD2 - UML - Correction
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - CorrectionLilia Sfaxi
 
rapport PFE ingénieur génie logiciel INSAT
rapport PFE ingénieur génie logiciel INSATrapport PFE ingénieur génie logiciel INSAT
rapport PFE ingénieur génie logiciel INSATSiwar GUEMRI
 
Conception et réalisation d’un Système d’information des étudiants du départe...
Conception et réalisation d’un Système d’information des étudiants du départe...Conception et réalisation d’un Système d’information des étudiants du départe...
Conception et réalisation d’un Système d’information des étudiants du départe...Ilyas CHAOUA
 
diagramme des cas d'utilisation
diagramme des cas d'utilisationdiagramme des cas d'utilisation
diagramme des cas d'utilisationAmir Souissi
 
Conception et développement d’un système d’alerte et notification d’une tou...
Conception et développement  d’un système d’alerte et notification  d’une tou...Conception et développement  d’un système d’alerte et notification  d’une tou...
Conception et développement d’un système d’alerte et notification d’une tou...Bilel Khaled ☁
 
Chp3 - Architecture Logicielle des Applications Mobiles
Chp3 - Architecture Logicielle des Applications MobilesChp3 - Architecture Logicielle des Applications Mobiles
Chp3 - Architecture Logicielle des Applications MobilesLilia Sfaxi
 
Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...Ramzi Noumairi
 
exercices base de données - sql
exercices  base de données - sql exercices  base de données - sql
exercices base de données - sql Yassine Badri
 
Exercices uml-corrige
Exercices uml-corrigeExercices uml-corrige
Exercices uml-corrigeAmineMouhout1
 
rapport de projet de fin d'étude_PFE
rapport de projet de fin d'étude_PFErapport de projet de fin d'étude_PFE
rapport de projet de fin d'étude_PFEDonia Hammami
 
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2Sofien Benrhouma
 
Chp5 - Diagramme d'Etat Transition
Chp5 - Diagramme d'Etat TransitionChp5 - Diagramme d'Etat Transition
Chp5 - Diagramme d'Etat TransitionLilia Sfaxi
 
Correction Examen 2016-2017 POO .pdf
Correction Examen 2016-2017 POO .pdfCorrection Examen 2016-2017 POO .pdf
Correction Examen 2016-2017 POO .pdfslimyaich3
 
Fascicule de tp atelier développement web
Fascicule de tp atelier développement webFascicule de tp atelier développement web
Fascicule de tp atelier développement webHouda TOUKABRI
 
Mohamed youssfi support architectures logicielles distribuées basées sue les ...
Mohamed youssfi support architectures logicielles distribuées basées sue les ...Mohamed youssfi support architectures logicielles distribuées basées sue les ...
Mohamed youssfi support architectures logicielles distribuées basées sue les ...ENSET, Université Hassan II Casablanca
 
Rapport de projet de conception et de développement
Rapport de projet de conception et de développementRapport de projet de conception et de développement
Rapport de projet de conception et de développementDonia Hammami
 
Conception et développement d'une application de gestion de production et de ...
Conception et développement d'une application de gestion de production et de ...Conception et développement d'une application de gestion de production et de ...
Conception et développement d'une application de gestion de production et de ...Mohamed Aziz Chetoui
 
CONCEPTION ET REALISATION D ’ UNE APPLICATION WEB POUR GESTION DE P ROJETS DE...
CONCEPTION ET REALISATION D ’ UNE APPLICATION WEB POUR GESTION DE P ROJETS DE...CONCEPTION ET REALISATION D ’ UNE APPLICATION WEB POUR GESTION DE P ROJETS DE...
CONCEPTION ET REALISATION D ’ UNE APPLICATION WEB POUR GESTION DE P ROJETS DE...Madjid Meddah
 
Examen principal- php - correction
Examen principal- php - correctionExamen principal- php - correction
Examen principal- php - correctionInes Ouaz
 

Tendances (20)

TD2 - UML - Correction
TD2 - UML - CorrectionTD2 - UML - Correction
TD2 - UML - Correction
 
rapport PFE ingénieur génie logiciel INSAT
rapport PFE ingénieur génie logiciel INSATrapport PFE ingénieur génie logiciel INSAT
rapport PFE ingénieur génie logiciel INSAT
 
Conception et réalisation d’un Système d’information des étudiants du départe...
Conception et réalisation d’un Système d’information des étudiants du départe...Conception et réalisation d’un Système d’information des étudiants du départe...
Conception et réalisation d’un Système d’information des étudiants du départe...
 
diagramme des cas d'utilisation
diagramme des cas d'utilisationdiagramme des cas d'utilisation
diagramme des cas d'utilisation
 
Conception et développement d’un système d’alerte et notification d’une tou...
Conception et développement  d’un système d’alerte et notification  d’une tou...Conception et développement  d’un système d’alerte et notification  d’une tou...
Conception et développement d’un système d’alerte et notification d’une tou...
 
Chp3 - Architecture Logicielle des Applications Mobiles
Chp3 - Architecture Logicielle des Applications MobilesChp3 - Architecture Logicielle des Applications Mobiles
Chp3 - Architecture Logicielle des Applications Mobiles
 
Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...Présentation PFE (Conception et développement d'une application web && mobile...
Présentation PFE (Conception et développement d'une application web && mobile...
 
exercices base de données - sql
exercices  base de données - sql exercices  base de données - sql
exercices base de données - sql
 
Exercices uml-corrige
Exercices uml-corrigeExercices uml-corrige
Exercices uml-corrige
 
Polymorphisme (cours, résumé)
Polymorphisme (cours, résumé)Polymorphisme (cours, résumé)
Polymorphisme (cours, résumé)
 
rapport de projet de fin d'étude_PFE
rapport de projet de fin d'étude_PFErapport de projet de fin d'étude_PFE
rapport de projet de fin d'étude_PFE
 
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
 
Chp5 - Diagramme d'Etat Transition
Chp5 - Diagramme d'Etat TransitionChp5 - Diagramme d'Etat Transition
Chp5 - Diagramme d'Etat Transition
 
Correction Examen 2016-2017 POO .pdf
Correction Examen 2016-2017 POO .pdfCorrection Examen 2016-2017 POO .pdf
Correction Examen 2016-2017 POO .pdf
 
Fascicule de tp atelier développement web
Fascicule de tp atelier développement webFascicule de tp atelier développement web
Fascicule de tp atelier développement web
 
Mohamed youssfi support architectures logicielles distribuées basées sue les ...
Mohamed youssfi support architectures logicielles distribuées basées sue les ...Mohamed youssfi support architectures logicielles distribuées basées sue les ...
Mohamed youssfi support architectures logicielles distribuées basées sue les ...
 
Rapport de projet de conception et de développement
Rapport de projet de conception et de développementRapport de projet de conception et de développement
Rapport de projet de conception et de développement
 
Conception et développement d'une application de gestion de production et de ...
Conception et développement d'une application de gestion de production et de ...Conception et développement d'une application de gestion de production et de ...
Conception et développement d'une application de gestion de production et de ...
 
CONCEPTION ET REALISATION D ’ UNE APPLICATION WEB POUR GESTION DE P ROJETS DE...
CONCEPTION ET REALISATION D ’ UNE APPLICATION WEB POUR GESTION DE P ROJETS DE...CONCEPTION ET REALISATION D ’ UNE APPLICATION WEB POUR GESTION DE P ROJETS DE...
CONCEPTION ET REALISATION D ’ UNE APPLICATION WEB POUR GESTION DE P ROJETS DE...
 
Examen principal- php - correction
Examen principal- php - correctionExamen principal- php - correction
Examen principal- php - correction
 

En vedette

Telecharger Exercices corrigés sqlplus
Telecharger Exercices corrigés sqlplusTelecharger Exercices corrigés sqlplus
Telecharger Exercices corrigés sqlpluswebreaker
 
Merise exercices-mcd_corriges
Merise  exercices-mcd_corrigesMerise  exercices-mcd_corriges
Merise exercices-mcd_corrigesMehdi El
 
Electrotechnique : Exercices corrigés
Electrotechnique : Exercices corrigésElectrotechnique : Exercices corrigés
Electrotechnique : Exercices corrigésRAMZI EL IDRISSI
 
Le langage plsql
Le langage plsqlLe langage plsql
Le langage plsqlkati_f87
 
Merise+ +exercices+mcd+-+corrigés
Merise+ +exercices+mcd+-+corrigésMerise+ +exercices+mcd+-+corrigés
Merise+ +exercices+mcd+-+corrigésMajid CHADAD
 
Pl/sql - interaction avec la base de données & structures de contrôle
Pl/sql  - interaction avec la base de données & structures de contrôlePl/sql  - interaction avec la base de données & structures de contrôle
Pl/sql - interaction avec la base de données & structures de contrôleAbdelouahed Abdou
 
Cours Base de Données
Cours Base de DonnéesCours Base de Données
Cours Base de Donnéesyassine kchiri
 
INFORMATIQUE DES GESTION : MERISE
INFORMATIQUE DES GESTION : MERISE INFORMATIQUE DES GESTION : MERISE
INFORMATIQUE DES GESTION : MERISE HINDOUSSATI
 
Exercices corrigés de mathématiques financières
Exercices corrigés de mathématiques financièresExercices corrigés de mathématiques financières
Exercices corrigés de mathématiques financièreseri8p7f4ku
 
A2 ~ les exercices de grammaire, avec corrigés
A2 ~ les exercices de grammaire, avec corrigésA2 ~ les exercices de grammaire, avec corrigés
A2 ~ les exercices de grammaire, avec corrigésIsabel Molina Gómez
 
Alphorm.com Formation PL/SQL
Alphorm.com Formation PL/SQLAlphorm.com Formation PL/SQL
Alphorm.com Formation PL/SQLAlphorm
 
TD - travaux dirigé limite de fonction ( exercice ) SOUFIANE MERABTI
TD - travaux dirigé limite de fonction ( exercice ) SOUFIANE MERABTITD - travaux dirigé limite de fonction ( exercice ) SOUFIANE MERABTI
TD - travaux dirigé limite de fonction ( exercice ) SOUFIANE MERABTIsoufiane merabti
 
Chapitre 3 tableaux et pointeurs en C
Chapitre 3 tableaux et pointeurs en CChapitre 3 tableaux et pointeurs en C
Chapitre 3 tableaux et pointeurs en CAbdelouahed Abdou
 
Electronique de puissance
Electronique de puissanceElectronique de puissance
Electronique de puissanceAmine Chahed
 
Exercices corrigés Compta S2
Exercices corrigés Compta S2Exercices corrigés Compta S2
Exercices corrigés Compta S2Cours Fsjest
 
Cours complet math financière
Cours complet math financièreCours complet math financière
Cours complet math financièreMarouane Chidali
 
exercices-corriges-dalgorithmique
exercices-corriges-dalgorithmiqueexercices-corriges-dalgorithmique
exercices-corriges-dalgorithmiquefast xp
 

En vedette (20)

Telecharger Exercices corrigés sqlplus
Telecharger Exercices corrigés sqlplusTelecharger Exercices corrigés sqlplus
Telecharger Exercices corrigés sqlplus
 
Merise exercices-mcd_corriges
Merise  exercices-mcd_corrigesMerise  exercices-mcd_corriges
Merise exercices-mcd_corriges
 
Electrotechnique : Exercices corrigés
Electrotechnique : Exercices corrigésElectrotechnique : Exercices corrigés
Electrotechnique : Exercices corrigés
 
Le langage plsql
Le langage plsqlLe langage plsql
Le langage plsql
 
Merise+ +exercices+mcd+-+corrigés
Merise+ +exercices+mcd+-+corrigésMerise+ +exercices+mcd+-+corrigés
Merise+ +exercices+mcd+-+corrigés
 
Pl/sql - interaction avec la base de données & structures de contrôle
Pl/sql  - interaction avec la base de données & structures de contrôlePl/sql  - interaction avec la base de données & structures de contrôle
Pl/sql - interaction avec la base de données & structures de contrôle
 
Introduction à pl/sql
Introduction à pl/sqlIntroduction à pl/sql
Introduction à pl/sql
 
Cours Base de Données
Cours Base de DonnéesCours Base de Données
Cours Base de Données
 
Modelisation conception SI
Modelisation conception SIModelisation conception SI
Modelisation conception SI
 
INFORMATIQUE DES GESTION : MERISE
INFORMATIQUE DES GESTION : MERISE INFORMATIQUE DES GESTION : MERISE
INFORMATIQUE DES GESTION : MERISE
 
Exercices corrigés de mathématiques financières
Exercices corrigés de mathématiques financièresExercices corrigés de mathématiques financières
Exercices corrigés de mathématiques financières
 
A2 ~ les exercices de grammaire, avec corrigés
A2 ~ les exercices de grammaire, avec corrigésA2 ~ les exercices de grammaire, avec corrigés
A2 ~ les exercices de grammaire, avec corrigés
 
Alphorm.com Formation PL/SQL
Alphorm.com Formation PL/SQLAlphorm.com Formation PL/SQL
Alphorm.com Formation PL/SQL
 
TD - travaux dirigé limite de fonction ( exercice ) SOUFIANE MERABTI
TD - travaux dirigé limite de fonction ( exercice ) SOUFIANE MERABTITD - travaux dirigé limite de fonction ( exercice ) SOUFIANE MERABTI
TD - travaux dirigé limite de fonction ( exercice ) SOUFIANE MERABTI
 
Chapitre 3 tableaux et pointeurs en C
Chapitre 3 tableaux et pointeurs en CChapitre 3 tableaux et pointeurs en C
Chapitre 3 tableaux et pointeurs en C
 
Programmation linéaire
Programmation linéaireProgrammation linéaire
Programmation linéaire
 
Electronique de puissance
Electronique de puissanceElectronique de puissance
Electronique de puissance
 
Exercices corrigés Compta S2
Exercices corrigés Compta S2Exercices corrigés Compta S2
Exercices corrigés Compta S2
 
Cours complet math financière
Cours complet math financièreCours complet math financière
Cours complet math financière
 
exercices-corriges-dalgorithmique
exercices-corriges-dalgorithmiqueexercices-corriges-dalgorithmique
exercices-corriges-dalgorithmique
 

Plus de webreaker

Examne sybase corrige
Examne sybase corrigeExamne sybase corrige
Examne sybase corrigewebreaker
 
Examen sybase - Administration base de donnees
Examen sybase - Administration base de donneesExamen sybase - Administration base de donnees
Examen sybase - Administration base de donneeswebreaker
 
Introduction aux techniques de déduplication
Introduction aux techniques de déduplicationIntroduction aux techniques de déduplication
Introduction aux techniques de déduplicationwebreaker
 
Telecharger Cours java pour debutant pdf
Telecharger Cours java pour debutant pdfTelecharger Cours java pour debutant pdf
Telecharger Cours java pour debutant pdfwebreaker
 
Principes Relationnels et Concepts Oracle
Principes Relationnelset Concepts OraclePrincipes Relationnelset Concepts Oracle
Principes Relationnels et Concepts Oraclewebreaker
 
Création de Vues | SQL Oracle
Création de Vues | SQL OracleCréation de Vues | SQL Oracle
Création de Vues | SQL Oraclewebreaker
 
Les Contraintes | SQL Oracle
Les Contraintes | SQL OracleLes Contraintes | SQL Oracle
Les Contraintes | SQL Oraclewebreaker
 
Création et Gestion de Tables | SQL Oracle
Création et Gestion de Tables | SQL OracleCréation et Gestion de Tables | SQL Oracle
Création et Gestion de Tables | SQL Oraclewebreaker
 
Manipulation des Données , cours sql oracle
Manipulation des Données , cours sql oracleManipulation des Données , cours sql oracle
Manipulation des Données , cours sql oraclewebreaker
 
Extraction Hiérarchique | Cours sql oracle
Extraction Hiérarchique | Cours sql oracleExtraction Hiérarchique | Cours sql oracle
Extraction Hiérarchique | Cours sql oraclewebreaker
 
Mise en Forme des Résultats avec SQL*Plus
Mise en Forme des Résultats avec SQL*PlusMise en Forme des Résultats avec SQL*Plus
Mise en Forme des Résultats avec SQL*Pluswebreaker
 
Écriture de Sous-Interrogations Synchronisées | SQL Oracle
Écriture de Sous-Interrogations Synchronisées | SQL OracleÉcriture de Sous-Interrogations Synchronisées | SQL Oracle
Écriture de Sous-Interrogations Synchronisées | SQL Oraclewebreaker
 
Sous-Interrogations Multi-colonne | SQL Oracle
Sous-Interrogations Multi-colonne | SQL OracleSous-Interrogations Multi-colonne | SQL Oracle
Sous-Interrogations Multi-colonne | SQL Oraclewebreaker
 
Sous-Interrogations - sql oracle
Sous-Interrogations - sql oracleSous-Interrogations - sql oracle
Sous-Interrogations - sql oraclewebreaker
 
Opérateurs Ensemblistes | SQL Oracle
Opérateurs Ensemblistes | SQL OracleOpérateurs Ensemblistes | SQL Oracle
Opérateurs Ensemblistes | SQL Oraclewebreaker
 
SQL Oracle | Regrouper les Données avec les Fonctions de Groupe
SQL Oracle | Regrouper les Données avec les Fonctions de GroupeSQL Oracle | Regrouper les Données avec les Fonctions de Groupe
SQL Oracle | Regrouper les Données avec les Fonctions de Groupewebreaker
 
Afficher des Données Issues de Plusieurs Tables : SQL Oracle
Afficher des Données Issues de Plusieurs Tables : SQL OracleAfficher des Données Issues de Plusieurs Tables : SQL Oracle
Afficher des Données Issues de Plusieurs Tables : SQL Oraclewebreaker
 
Fonctions Mono-Ligne
Fonctions Mono-LigneFonctions Mono-Ligne
Fonctions Mono-Lignewebreaker
 
SQL Oracle : Sélection et Tri des Lignes Retournées par un SELECT
SQL Oracle : Sélection et Tri des Lignes Retournées par un SELECTSQL Oracle : Sélection et Tri des Lignes Retournées par un SELECT
SQL Oracle : Sélection et Tri des Lignes Retournées par un SELECTwebreaker
 
L'Ordre SELECT Élémentaire | SQL Oracle
L'Ordre SELECT Élémentaire | SQL OracleL'Ordre SELECT Élémentaire | SQL Oracle
L'Ordre SELECT Élémentaire | SQL Oraclewebreaker
 

Plus de webreaker (20)

Examne sybase corrige
Examne sybase corrigeExamne sybase corrige
Examne sybase corrige
 
Examen sybase - Administration base de donnees
Examen sybase - Administration base de donneesExamen sybase - Administration base de donnees
Examen sybase - Administration base de donnees
 
Introduction aux techniques de déduplication
Introduction aux techniques de déduplicationIntroduction aux techniques de déduplication
Introduction aux techniques de déduplication
 
Telecharger Cours java pour debutant pdf
Telecharger Cours java pour debutant pdfTelecharger Cours java pour debutant pdf
Telecharger Cours java pour debutant pdf
 
Principes Relationnels et Concepts Oracle
Principes Relationnelset Concepts OraclePrincipes Relationnelset Concepts Oracle
Principes Relationnels et Concepts Oracle
 
Création de Vues | SQL Oracle
Création de Vues | SQL OracleCréation de Vues | SQL Oracle
Création de Vues | SQL Oracle
 
Les Contraintes | SQL Oracle
Les Contraintes | SQL OracleLes Contraintes | SQL Oracle
Les Contraintes | SQL Oracle
 
Création et Gestion de Tables | SQL Oracle
Création et Gestion de Tables | SQL OracleCréation et Gestion de Tables | SQL Oracle
Création et Gestion de Tables | SQL Oracle
 
Manipulation des Données , cours sql oracle
Manipulation des Données , cours sql oracleManipulation des Données , cours sql oracle
Manipulation des Données , cours sql oracle
 
Extraction Hiérarchique | Cours sql oracle
Extraction Hiérarchique | Cours sql oracleExtraction Hiérarchique | Cours sql oracle
Extraction Hiérarchique | Cours sql oracle
 
Mise en Forme des Résultats avec SQL*Plus
Mise en Forme des Résultats avec SQL*PlusMise en Forme des Résultats avec SQL*Plus
Mise en Forme des Résultats avec SQL*Plus
 
Écriture de Sous-Interrogations Synchronisées | SQL Oracle
Écriture de Sous-Interrogations Synchronisées | SQL OracleÉcriture de Sous-Interrogations Synchronisées | SQL Oracle
Écriture de Sous-Interrogations Synchronisées | SQL Oracle
 
Sous-Interrogations Multi-colonne | SQL Oracle
Sous-Interrogations Multi-colonne | SQL OracleSous-Interrogations Multi-colonne | SQL Oracle
Sous-Interrogations Multi-colonne | SQL Oracle
 
Sous-Interrogations - sql oracle
Sous-Interrogations - sql oracleSous-Interrogations - sql oracle
Sous-Interrogations - sql oracle
 
Opérateurs Ensemblistes | SQL Oracle
Opérateurs Ensemblistes | SQL OracleOpérateurs Ensemblistes | SQL Oracle
Opérateurs Ensemblistes | SQL Oracle
 
SQL Oracle | Regrouper les Données avec les Fonctions de Groupe
SQL Oracle | Regrouper les Données avec les Fonctions de GroupeSQL Oracle | Regrouper les Données avec les Fonctions de Groupe
SQL Oracle | Regrouper les Données avec les Fonctions de Groupe
 
Afficher des Données Issues de Plusieurs Tables : SQL Oracle
Afficher des Données Issues de Plusieurs Tables : SQL OracleAfficher des Données Issues de Plusieurs Tables : SQL Oracle
Afficher des Données Issues de Plusieurs Tables : SQL Oracle
 
Fonctions Mono-Ligne
Fonctions Mono-LigneFonctions Mono-Ligne
Fonctions Mono-Ligne
 
SQL Oracle : Sélection et Tri des Lignes Retournées par un SELECT
SQL Oracle : Sélection et Tri des Lignes Retournées par un SELECTSQL Oracle : Sélection et Tri des Lignes Retournées par un SELECT
SQL Oracle : Sélection et Tri des Lignes Retournées par un SELECT
 
L'Ordre SELECT Élémentaire | SQL Oracle
L'Ordre SELECT Élémentaire | SQL OracleL'Ordre SELECT Élémentaire | SQL Oracle
L'Ordre SELECT Élémentaire | SQL Oracle
 

Dernier

Cours-irrigation_et_drainage_cours1.pptx
Cours-irrigation_et_drainage_cours1.pptxCours-irrigation_et_drainage_cours1.pptx
Cours-irrigation_et_drainage_cours1.pptxlamourfrantz
 
Fondation Louis Vuitton. pptx
Fondation      Louis      Vuitton.   pptxFondation      Louis      Vuitton.   pptx
Fondation Louis Vuitton. pptxTxaruka
 
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptxSAID MASHATE
 
Grammaire pour les élèves de la 6ème.doc
Grammaire pour les élèves de la  6ème.docGrammaire pour les élèves de la  6ème.doc
Grammaire pour les élèves de la 6ème.docKarimKhrifech
 
Approche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptxApproche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptxssusercbaa22
 
Bolero. pptx . Film de A nnne Fontaine
Bolero. pptx . Film   de  A nnne FontaineBolero. pptx . Film   de  A nnne Fontaine
Bolero. pptx . Film de A nnne FontaineTxaruka
 
MICROBIOLOGIE ENDODONTIQUE english and frensh 25 nov 2020.pdf
MICROBIOLOGIE ENDODONTIQUE english and frensh 25 nov 2020.pdfMICROBIOLOGIE ENDODONTIQUE english and frensh 25 nov 2020.pdf
MICROBIOLOGIE ENDODONTIQUE english and frensh 25 nov 2020.pdfssuser40e112
 
presentation l'interactionnisme symbolique finale.pptx
presentation l'interactionnisme symbolique  finale.pptxpresentation l'interactionnisme symbolique  finale.pptx
presentation l'interactionnisme symbolique finale.pptxMalikaIdseaid1
 
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptx
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptxSUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptx
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptxssuserbd075f
 
MaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.pptMaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.pptssusercbaa22
 
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...Faga1939
 
Formation M2i - Intelligence Artificielle Comment booster votre productivité ...
Formation M2i - Intelligence Artificielle Comment booster votre productivité ...Formation M2i - Intelligence Artificielle Comment booster votre productivité ...
Formation M2i - Intelligence Artificielle Comment booster votre productivité ...M2i Formation
 
présentation sur l'échafaudage dans des travaux en hauteur
présentation sur l'échafaudage dans des travaux en hauteurprésentation sur l'échafaudage dans des travaux en hauteur
présentation sur l'échafaudage dans des travaux en hauteurdinaelchaine
 
Formation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadershipFormation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadershipM2i Formation
 
systeme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expertsysteme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expertChristianMbip
 
Présentation de cartes d'extension zhr..pptx
Présentation de cartes d'extension zhr..pptxPrésentation de cartes d'extension zhr..pptx
Présentation de cartes d'extension zhr..pptxpopzair
 
Sidonie au Japon . pptx Un film français
Sidonie    au   Japon  .  pptx  Un film françaisSidonie    au   Japon  .  pptx  Un film français
Sidonie au Japon . pptx Un film françaisTxaruka
 
Boléro. pptx Film français réalisé par une femme.
Boléro.  pptx   Film   français   réalisé  par une  femme.Boléro.  pptx   Film   français   réalisé  par une  femme.
Boléro. pptx Film français réalisé par une femme.Txaruka
 
Mécanique Automobile LE TURBOCOMPRESSEUR.ppt
Mécanique Automobile LE TURBOCOMPRESSEUR.pptMécanique Automobile LE TURBOCOMPRESSEUR.ppt
Mécanique Automobile LE TURBOCOMPRESSEUR.pptssusercbaa22
 

Dernier (20)

Cours-irrigation_et_drainage_cours1.pptx
Cours-irrigation_et_drainage_cours1.pptxCours-irrigation_et_drainage_cours1.pptx
Cours-irrigation_et_drainage_cours1.pptx
 
Fondation Louis Vuitton. pptx
Fondation      Louis      Vuitton.   pptxFondation      Louis      Vuitton.   pptx
Fondation Louis Vuitton. pptx
 
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
666148532-Formation-Habilitation-ELECTRIQUE-ENTREPRISE-MARS-2017.pptx
 
Grammaire pour les élèves de la 6ème.doc
Grammaire pour les élèves de la  6ème.docGrammaire pour les élèves de la  6ème.doc
Grammaire pour les élèves de la 6ème.doc
 
Approche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptxApproche-des-risques-par-l’analyse-des-accidents-1.pptx
Approche-des-risques-par-l’analyse-des-accidents-1.pptx
 
Bolero. pptx . Film de A nnne Fontaine
Bolero. pptx . Film   de  A nnne FontaineBolero. pptx . Film   de  A nnne Fontaine
Bolero. pptx . Film de A nnne Fontaine
 
MICROBIOLOGIE ENDODONTIQUE english and frensh 25 nov 2020.pdf
MICROBIOLOGIE ENDODONTIQUE english and frensh 25 nov 2020.pdfMICROBIOLOGIE ENDODONTIQUE english and frensh 25 nov 2020.pdf
MICROBIOLOGIE ENDODONTIQUE english and frensh 25 nov 2020.pdf
 
presentation l'interactionnisme symbolique finale.pptx
presentation l'interactionnisme symbolique  finale.pptxpresentation l'interactionnisme symbolique  finale.pptx
presentation l'interactionnisme symbolique finale.pptx
 
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptx
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptxSUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptx
SUPPORT DE SUR COURS_GOUVERNANCE_SI_M2.pptx
 
MaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.pptMaintenanceLa Maintenance Corrective.ppt
MaintenanceLa Maintenance Corrective.ppt
 
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
LA MONTÉE DE L'ÉDUCATION DANS LE MONDE DE LA PRÉHISTOIRE À L'ÈRE CONTEMPORAIN...
 
Formation M2i - Intelligence Artificielle Comment booster votre productivité ...
Formation M2i - Intelligence Artificielle Comment booster votre productivité ...Formation M2i - Intelligence Artificielle Comment booster votre productivité ...
Formation M2i - Intelligence Artificielle Comment booster votre productivité ...
 
présentation sur l'échafaudage dans des travaux en hauteur
présentation sur l'échafaudage dans des travaux en hauteurprésentation sur l'échafaudage dans des travaux en hauteur
présentation sur l'échafaudage dans des travaux en hauteur
 
Formation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadershipFormation M2i - Comprendre les neurosciences pour développer son leadership
Formation M2i - Comprendre les neurosciences pour développer son leadership
 
systeme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expertsysteme expert_systeme expert_systeme expert
systeme expert_systeme expert_systeme expert
 
Présentation de cartes d'extension zhr..pptx
Présentation de cartes d'extension zhr..pptxPrésentation de cartes d'extension zhr..pptx
Présentation de cartes d'extension zhr..pptx
 
Sidonie au Japon . pptx Un film français
Sidonie    au   Japon  .  pptx  Un film françaisSidonie    au   Japon  .  pptx  Un film français
Sidonie au Japon . pptx Un film français
 
Boléro. pptx Film français réalisé par une femme.
Boléro.  pptx   Film   français   réalisé  par une  femme.Boléro.  pptx   Film   français   réalisé  par une  femme.
Boléro. pptx Film français réalisé par une femme.
 
Mécanique Automobile LE TURBOCOMPRESSEUR.ppt
Mécanique Automobile LE TURBOCOMPRESSEUR.pptMécanique Automobile LE TURBOCOMPRESSEUR.ppt
Mécanique Automobile LE TURBOCOMPRESSEUR.ppt
 
Pâques de Sainte Marie-Euphrasie Pelletier
Pâques de Sainte Marie-Euphrasie PelletierPâques de Sainte Marie-Euphrasie Pelletier
Pâques de Sainte Marie-Euphrasie Pelletier
 

Telecharger Exercices corrigés PL/SQL

  • 1. Exercices – PL/SQL 1/1 • la désignation des produits soit écrite en majuscules ; • le prix unitaire en francs des produits soit converti en Euros. Le prix en Euros devra être entier (arrondir au supérieur). Cas particuliers à traiter : • Si la table PRODUIT est vide, la table PRODUIT2000 devra contenir uniquement le tuple (0,’Pas de produit’, NULL, NULL). • Si un prix de la table produit est NULL, son prix en Euros doit être 0. Indications : • Considérer que la structure de la table PRODUIT2000 a déjà été créée. • Tester si la table PRODUIT est vide. Si ce n’est pas le cas, y accéder séquentiellement à l’aide d’un curseur, effectuer les transformations sur les champs et stocker le résultat dans la table PRODUIT2000. • Utiliser les fonctions SQL*Plus UPPER, TRUNC et NVL. Exercice 2 Pour tenter d’établir une corrélation, on souhaite connaître la différence de quantité moyenne entre les commandes successivement enregistrées dans la table COMMANDE de la base de données CLIENT- COMMANDE-PRODUIT-FOURNISSEUR. La table COMMANDE est remplie de commandes va- luées (c’est-à-dire, pour lesquelles l’attribut QUANTITE n’est pas NULL) ou non. Les commandes non valuées ne sont pas à prendre en compte. Écrire un programme PL/SQL permettant de calculer la diffé- rence de quantité moyenne entre les commandes. Cas particuliers à traiter : • La table COMMANDE contient moins de deux commandes valuées. Indications : • Créer un curseur contenant les quantités de commandes valuées. • Lire la première quantité puis, pour toutes les quantités suivantes, cumuler la valeur absolue de quantité courante – quantité précédente (fonction ABS). • Afficher le résultat dans une exception à l’aide de la procédure RAISE_APPLICATION_ERROR. Utiliser l’opérateur de concaténation || et la fonction TO_CHAR. Exercices – PL/SQL Correction 1/2 Correction Exercice 1 -- Creation de la table PRODUIT2000 a partir de la table PRODUIT DECLARE euro CONSTANT REAL:=6.55957; nbprod NUMBER(3); aucun_produit EXCEPTION; CURSOR acces IS SELECT numprod, desi, prixuni, numfour FROM produit; prod acces%ROWTYPE; newdesi produit.desi%TYPE; newprix produit.prixuni%TYPE; BEGIN -- Compte des produits SELECT COUNT(*) INTO nbprod FROM PRODUIT; -- Si pas de produits, exception IF nbprod=0 THEN RAISE aucun_produit; END IF; -- Acces sequentiel a la table PRODUIT -- Remplissage de la table PRODUIT2000 FOR prod IN acces LOOP newdesi:=UPPER(prod.desi); newprix:=NVL(prod.prixuni,0); IF newprix<>0 THEN newprix:=TRUNC(newprix/euro)+1; END IF; INSERT INTO produit2000 VALUES(prod.numprod,newdesi,newprix,prod.numfour); END LOOP; -- Validation de la transaction COMMIT; EXCEPTION WHEN aucun_produit THEN INSERT INTO produit2000 VALUES(0,'Pas de produit',NULL,NULL); END; . / www.Telechargercours.com Exercices – PL/SQL Exercice 1 2001, il est temps de passer à l’Euro pour l’entreprise de VPC dont la base de données CLIENT-COMMANDE-PRODUIT-FOURNISSEUR sert d’exemple dans le cours. Écrire un programme PL/SQL permettant de construire, à partir de la table PRODUIT, une table PRODUIT2000 telle que : www.TelechargerCours.com
  • 2. Exercices – PL/SQL Correction 2/2 Correction Exercice 2 -- DIFFERENCE MOYENNE DE QUANTITE ENTRE LES COMMANDES DECLARE CURSOR valuees IS SELECT quantite FROM commande WHERE quantite IS NOT NULL; cde valuees%ROWTYPE; prec REAL; -- quantite precedente cour REAL; -- quantite courante cumul REAL; moyenne REAL; ncv INTEGER; n INTEGER; pas_assez EXCEPTION; resultat EXCEPTION; BEGIN -- Test nombre de commandes valuees SELECT COUNT(*) INTO ncv FROM commande WHERE quantite IS NOT NULL; IF ncv<2 THEN RAISE pas_assez; END IF; -- Acces 1er tuple OPEN valuees; FETCH valuees INTO cde; prec:=cde.quantite; -- Acces aux suivants et cumul cumul:=0; n:=0; LOOP FETCH valuees INTO cde; EXIT WHEN valuees%NOTFOUND; cour:=cde.quantite; cumul:=cumul+ABS(cour-prec); n:=n+1; prec:=cour; END LOOP; CLOSE valuees; -- Calcul et affichage de la moyenne moyenne:=cumul/n; RAISE resultat; EXCEPTION -- Erreur WHEN pas_assez THEN RAISE_APPLICATION_ERROR(-20501,'Pas assez de commandes'); -- Resultat WHEN resultat THEN RAISE_APPLICATION_ERROR(-20500,'Moyenne = '||TO_CHAR(moyenne)); END; . / www.TelechargerCours.com