Bases de Données / Databases

Site Web de l'équipe BD du LIP6 / LIP6 DB Web Site

Outils pour utilisateurs

Outils du site


site:enseignement:master:mlbda:tmes:priseenmain

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
site:enseignement:master:mlbda:tmes:priseenmain [10/09/2015 14:38]
amine
site:enseignement:master:mlbda:tmes:priseenmain [05/10/2020 14:34] (Version actuelle)
hubert
Ligne 1: Ligne 1:
-====TME ​: Prise en main d'​Oracle et requêtes sur la base MONDIAL==== +{{indexmenu_n>​1}}
-==Objectif principal== +
-réviser le langage de requête SQL, puis le langage de programmation PL/SQL+
  
-==Objectifs secondaires==+====== TME 2019  Requêtes SQL  ====== 
 + 
 +=== Prise en main d'​Oracle et requêtes sur la base MONDIAL=== 
 + 
 +====Objectif principal==== 
 +Réviser le langage de requête SQL, puis le langage de programmation PL/SQL 
 + 
 +====Objectifs secondaires====
   *  se familiariser avec les manuels de documentation d'​Oracle   *  se familiariser avec les manuels de documentation d'​Oracle
   *  se familiariser avec les vues du dictionnaire du SGBD   *  se familiariser avec les vues du dictionnaire du SGBD
   *  savoir compiler et exécuter une procédure stockée   *  savoir compiler et exécuter une procédure stockée
  
-==Prérequis==+====Prérequis====
   *    Lire [[site:​enseignement:​documentation:​oracle:​connexionoracle|ConnexionOracle]] pour se connecter à Oracle   *    Lire [[site:​enseignement:​documentation:​oracle:​connexionoracle|ConnexionOracle]] pour se connecter à Oracle
-===Préparation du TME===+ 
 +====Préparation du TME====
 Ouvrir une fenêtre de terminal (xterm), vérifier que la commande <​code>​ Ouvrir une fenêtre de terminal (xterm), vérifier que la commande <​code>​
   echo $BD_TOOL </​code>​   echo $BD_TOOL </​code>​
Ligne 23: Ligne 29:
 | ls | lister les fichiers du TME| | ls | lister les fichiers du TME|
 | emacs s1.sql & | éditer le fichier s1.sql| | emacs s1.sql & | éditer le fichier s1.sql|
-| se connecter à  Oracle | sqlplus E''​nnn''/​E''​nnn''​@oracle ​(avec ''​nnn''​ votre numéro de login)| +| se connecter à  Oracle | sqlplus E''​nnn''/​E''​nnn''​@ora11 (avec ''​nnn''​ votre numéro de login)| 
-| compiler et exécuter la procédure l1 | @l1 (sert pour l'​exercice 1)| +| créer des synonymes pour simplifier les noms de tables de la base Mondial | @mondial_synonym (sert pour l'​exercice ​1)|
-| créer des synonymes pour simplifier les noms de tables de la base Mondial | @mondial_synonym (sert pour l'​exercice ​2)|+
  
-**COMMENCER PAR L'​EXERCICE 2** +** <fc #​ff0000>​Exercices</​fc> ​** 
-==Exercice 1 (facultatif) : PL/SQL sur le dictionnaire du SGBD==+====Exercice 1 (obligatoire) : SQL sur la base MONDIAL==== 
 +  * Prendre en main la base MONDIAL 
 +    * lire la {{:​site:​enseignement:​master:​mlbda:​mondial-rs.pdf| description}} du schéma de la base MONDIAL 
 +    * lire le [[http://​www-bd.lip6.fr/​ens/​mabd2011/​extra/​tme/​mondial/​mondial-ER.pdf|diagramme]] Entité-Association de la base MONDIAL 
 +    * lire les [[http://​www-bd.lip6.fr/​ens/​mabd2011/​extra/​tme/​mondial/​mondial-foreign_keys.pdf|contraintes]] d'​intégrité référentielle de base MONDIAL 
 +  * Requêtes avancées 
 +    * Editer le fichier tp1.sql 
 +    * Ecrire en SQL les requêtes numérotées 10 à 20 sur la base MONDIAL, et les exécuter. 
 +    * <fc #​ff0000>​Aide requête 14</​fc>: ​ les affluents des affluents des affluents du Nil n’ont aucun affluent. 
 +    * Vérifier vos réponses en exécutant les requêtes solution nommées de Mondial.R1 à Mondial.R20 
 +<​code>​ 
 +select * from mondial.R1;​ 
 +...... 
 +select * from mondial.R20;</​code>​ 
 + 
 + 
 +====Exercice 2 (facultatif) : PL/SQL sur le dictionnaire du SGBD==== 
 + ​* ​ compiler et exécuter la procédure l1: @l1 
   *     Que représentent les vues du dictionnaire user_tables,​ user_objects et user_source ? Expliquer brièvement ce que représente chaque attribut. Voir la documentation:​   *     Que représentent les vues du dictionnaire user_tables,​ user_objects et user_source ? Expliquer brièvement ce que représente chaque attribut. Voir la documentation:​
-    *  vue user_tables (cf. all_tables) ​  +    *  vue [[http://​www-ari.ufr-info-p6.jussieu.fr/​OUTILS/​documentation/​doc/​oracle/​doc10G-2/​server.102/​b14237/​statviews_4471.htm#​REFRN26286|user_tables]] (cf. [[http://​www-ari.ufr-info-p6.jussieu.fr/​OUTILS/​documentation/​doc/​oracle/​doc10G-2/​server.102/​b14237/​statviews_2105.htm#​i1592091|all_tables]])   
-    *  vue user_objects (cf. all_objects) +    *  vue [[http://​www-ari.ufr-info-p6.jussieu.fr/​OUTILS/​documentation/​doc/​oracle/​doc10G-2/​server.102/​b14237/​statviews_4376.htm#​sthref3180|user_objects]] (cf.[[http://​www-ari.ufr-info-p6.jussieu.fr/​OUTILS/​documentation/​doc/​oracle/​doc10G-2/​server.102/​b14237/​statviews_2005.htm#​i1583352| ​all_objects]]
-    *  vue user_source (cf. all_source)+    *  vue [[http://​www-ari.ufr-info-p6.jussieu.fr/​OUTILS/​documentation/​doc/​oracle/​doc10G-2/​server.102/​b14237/​statviews_4434.htm#​sthref3296|user_source]] (cf. [[http://​www-ari.ufr-info-p6.jussieu.fr/​OUTILS/​documentation/​doc/​oracle/​doc10G-2/​server.102/​b14237/​statviews_2063.htm#​i1588578|all_source]])
   *     Que fait la procédure l1 ? Ajouter des commentaires dans l1.sql pour expliquer le fonctionnement de la procédure l1.   *     Que fait la procédure l1 ? Ajouter des commentaires dans l1.sql pour expliquer le fonctionnement de la procédure l1.
   *     ​Compléter la procédure s1(nom) pour afficher le code source d'une procédure dont le nom est passé en paramètre. Voir le fichier s1.sql   *     ​Compléter la procédure s1(nom) pour afficher le code source d'une procédure dont le nom est passé en paramètre. Voir le fichier s1.sql
   *     ​Ecrire la procédure s2(nom, ligne1, ligne2) pour afficher le morceau de code source (ligne1 à ligne2) de la procédure dont le nom est passé en paramètre.   *     ​Ecrire la procédure s2(nom, ligne1, ligne2) pour afficher le morceau de code source (ligne1 à ligne2) de la procédure dont le nom est passé en paramètre.
-  *     ​Eventuellement,​ installer chez soi Oracle Express Edition+  *     ​Eventuellement,​ installer chez soi [[http://​www.index-internet.net/​info_oracle_xe_oracle_express_edition.htm|Oracle Express Edition]]
  
-==Exercice 2 : SQL sur la base MONDIAL== 
-  * Prendre en main la base MONDIAL 
-    * lire le diagramme Entité-Association de la base MONDIAL 
-    * lire les contraintes d'​intégrité référentielle de base MONDIAL 
-  * Requêtes avancées 
-    * Editer le fichier tp1.sql 
-    * Ecrire en SQL les requêtes numérotées 10 à 20 sur la base MONDIAL, et les exécuter. 
-    * Vérifier vos réponses en exécutant les requêtes solution nommées de Mondial.R1 à Mondial.R20 : 
-<​code>​ select * from mondial.R1; 
  
-   ​select * from mondial.R2;</​code>​+Retour [[site:​enseignement:​master:​mlbda:​start]]
site/enseignement/master/mlbda/tmes/priseenmain.1441888694.txt.gz · Dernière modification: 10/09/2015 14:38 par amine