tp oracle - Cedric

Transcription

tp oracle - Cedric
TP ORACLE
Francois Barthélémy∗et Cédric du Mouza∗
1
Bien débuter
1.1 Se connecter à la base
1. Se connecter sur newton
2. Trouver le document pour réaliser le TP en se connectant à l’url
http://cedric.cnam.fr/vertigo/Cours/ICPJ/planning-icpj/
planning-icpj.html
3. Charger l’environnement pour le TP Oracle en exécutant la commande
source /local/bin/env/ora8i.env
4. Se connecter à la base en lançant la commande sqlplus avec pour login votre
login habituel et pour password celui apparaissant sur votre carte d’auditeur
CNAM.
1.2 Où trouver de l’information sur Oracle
Deux url qui pourront vous servir:
• http://wwwlsi.supelec.fr/www/yb/poly_bd/sql/tdm_sql.
html
• http://dept25.cnam.fr:8080/BDA/Documentation.php
1
Lab. CEDRIC, équipe VERTIGO, CNAM, Paris, France, {barthe,dumouza}@cnam.fr
1
2
Consultation du schéma
1. Lister les tables dont on est propriétaire
(“Select table_name from user_tables;”).
2. Lister les tables de l’utilisateur DUMOUZA
(“Select table_name from all_users where owner = ’DUMOUZA;”’).
3. Description de la table album (attributs et formats)
(“desc album”).
3
Requêtes simples (sans jointures)
1. Donner le n-uplet correspondant à l’album d’identifiant ’B000001DZO’.
2. Donner les titres des albums réalisés par ’U2’;
3. Donner les albums dont le prix est inférieur à 9 euros.
4. Donner les albums qui sont sortis après le 18 mai 1999.
5. Donner les artistes dont l’album a atteint un rank supérieur ou égal à 25000.
6. Donner la liste (en éliminant les doublons) des asin des disques qui ont plus
de 3 cds.
7. Donner les titres des albums dont l’artiste commence par la lettre ’C’ et le
prix est supérieur à 10 euros.
8. Donner les noms des artistes ayant sorti un album classé entre la position
500 et 1000, trié par date de sortie.
4
Jointures simples
1. Donner les titres des chansons de l’album ’Buena Vista Social Club’;
2. Donner les titres des albums qui ont plus de 2 cd;
3. Donner le nom des compositeurs de musique de film (le style doit contenir
le mot ’Soundtracks’);
4. Donner les artistes qui ont plusieurs labels.
2
5. Donner le titre de l’album, le titre de sa première chanson, son style, pour
les albums de rank inférieur à 90.
6. Donner le titre et la date de sortie des albums dont le prix est supérieur au
nombre de chansons (on considère les albums à plusieurs cds comme étant
plusieurs albums de 1 cd du même titre).
5
Requêtes imbriquées.
1. Donner les titres des albums coûtant le prix le plus élevé, ne pas tenir compte
des albums dont le prix n’est pas renseigné.
2. Donner les titres des albums sans style (ou dont le style n’a pas été préciser).
3. Donner les noms des artistes qui ont produit un album sous le même label
que “Garth Brooks” (attention, “Garth Brooks” peut avoir produit des albums
sous différents labels).
4. Donner les trois albums ayant les pris les plus bas (utiliser rownum qui
numérote les lignes du résultat).
5. Donner les titres des albums sortis le même jour qu’un album de musique
“pop”.
6. donner les titres des albums pour lesquels il n’existe pas de deuxième cd
(avec un EXIST).
6
Agrégats
1. Donner le nombre d’albums stockés dans la base.
2. Donner le prix moyen d’un album.
3. Donner le nombre d’albums ayant au moins 2 cds.
4. Donner les titres des albums ayant le prix le plus bas.
5. Donner l’asin et le nombre de chansons de chaque album (attention un album
peut-être consititué de plusieurs cds!)
6. Donner le nom du label et le meilleur rang obtenu par un de ses albums.
3
7
Mises à jour
1. Créer une table “Labels” avec les attributs
“name” nom du label, chaîne de caractères de longueur 40,
“country” pays d’origine de ce label, chaîne de caractères de longueur 30,
“num_artists” nombre d’artistes ayant signé pour ce label, entier,
“weight” chiffre d’affaires en milliards de dollards, réel.
2. Ajouter les n-uplets correspondant aux labels
“Sony” label japonais qui présente 327 artistes pour un C.A. de 2.38 M$
“EMI” label américain, qui présente 268 artistes pour un C.A. de 1.63 M$
“Capitol” label américain qui présente 112 artistes pour un C.A. de 0.87M$
“Polydor” label français qui présente 37 artistes pour un C.A. de 0.11 M$.
3. Supprimer le n-uplet correspondant au label “Polydor”.
4. Mettre à jour le C.A. de “Sony” à 2.64 M$.
5. Mettre à jour le nombre d’artistes de “Capitol” à 266 artistes ainsi que son
chiffre d’affaires à 1.54 M$.
6. Supprimer la table “test”.
4