Chargement des données

Animés & Studios




Objectif :

Les objectifs principaux de ce TP sont :


On utilisera aussi les éléments de langage SQL ci-dessous :

La base de données

Dans ce TP, notre base de données contient deux relations (tables) nommées animes et studio. Voici le schéma relationnel de cette base de données.

D'après le schéma relationnel ci-dessus :
L'attribut titre de la relation animes est :

L'attribut id de la relation studios est :

L'attribut id_studio de la relation animes est :

Quelle est la clé primaire Les clés primaires et secondaires sont soulignées.
Une clé primaire doit être unique.
de la relation animes est :



Retrouver les propriétés à l'aide de


SELECT


L'instruction SELECT est utiliser dans les requête de sélection. Elle permet de sélectionner un ou plusieurs attributs d'une table.
Pour pouvoir compter les résultats, on peut ajouter l'instruction COUNT
Syntaxe de l'instruction SELECT est :
SELECT (attribut.s) FROM relation [ WHERE selecteur ]

Vous pouvez lancer vos requêtes SQL à partir d'ici


Déterminer le cardinal de la relation studios :
Déterminer le cardinal de la relation animes :
Déterminer l'ordre de la relation studios :
Déterminer l'ordre de la relation animes :

Sélectionner des animés


JOIN ON

L'instruction JOIN ... ON jointure interne est utiliser pour retourner les enregistrements quand la condition est vrai dans les 2 tables.
SELECT * FROM r_A JOIN r_B ON r_A.a_1 = r_B.a_2




Remarque : En option, on pourra rajouter un selecteur pour filtrer les réponses.
WHERE selecteur : instruction optionnelle permettant de spécifier une condition sur un ou plusieurs attributs.
Dans le cadre d'une jointure, il faudra préciser la table d'origine de l'attributs. par exemple si on veut filtrer les entrées dont l'attribut a1 de la relation r2 est égal à 5, le selecteur deviendra WHERE r2.a1 = 5.


Compter le nombre d'animés produits par le studio Ghibli (noté Studio Ghibli).
Combien d'animés sont listés ?


Sélectionner les titres des animés sortie du studio Ghibli (noté Studio Ghibli) et les classer par ordre alphabétique.
Quel est le 3ème nom de la liste ?


Sélectionner des studios ou des animés


JOIN ON


Dans une jointure, il faut faire attention à quelle relation on place en premier.
Il penser à mettre en premier la relation dans laquelle on fait la sélection.
On souhaite construire une requête pour déterminer le nom du studio qui a produit le film JJK 0. Sur quelle relation va porter la requête SELECT ?

Quelle requête SQL permet connaître le nom du studio qui a produit le film JJK 0 (dont le titre est Jujutsu Kaisen 0) ?
Quel est le sudio qui a produit JJK0 ?


On souhaite construire une requête pour compter tous les animés issus des studios crées avant 1980. Sur quelle relation va porter la requête SELECT ?

Compter tous les animés issus des studios crées avant 1980 (attribut creation de la table studios).
Combien d'animés sont listés ?

Des filtres plus subtils


WHERE

Les selecteurs de l'instruction WHERE peuvent porter sur l'une ou l'autre des tables.
On peut les lier grâce au instruction AND et OR
Afficher le titre, l'année et le type des animés de type films (Film) produits par le studio Toei(nom Toei Animation Company ).
Quelle est la somme des valeurs de l'attributs annee des films sélectionnées ?


Afficher le titre, le année, le types et le nom du studio Il faudra préciser dans la requête que l'attribut nom provient de la relation studios. des animés produits par le studio Madhouse(nom Madhouse ) après 2005 ou par le studio Wit Studio (nom Wit Studio) après 2010. (2005 et 2010 n'étant pas inclus)
Combien d'OAV contient cette liste ?


Rajouter des données


INSERT


L'instruction INSERT est utiliser pour ajouter une instruction dans une table.
Attention : L'ordre d'insertion peux avoir de l'importance.
Syntaxe de l'instruction INSERT est :
INSERT INTO relation(a1, a2, a3) VALUES (v1, v2, v3);

On souhaite insérer l'animé Samourai Champloo :

Animé :
  • titre : Samourai Champloo
  • id_studio : 10
  • type : Série
  • annee : 2004
  • url_image : http://www.anime-kun.net/animes/anim_img/samurai-champloo-228-455.jpg

Studio :
  • id : 10
  • nom : Manglobe
  • creation : 2002
  • wikipedia : https://fr.wikipedia.org/wiki/Manglobe