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:licence:2i009:tme8_h2

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:licence:2i009:tme8_h2 [15/04/2020 17:18]
amann
site:enseignement:licence:2i009:tme8_h2 [16/04/2021 09:52] (Version actuelle)
amine [Exercice 3]
Ligne 1: Ligne 1:
-====== TME 8: création de schémas – contraintes d'​intégrité ======+====== TME 8: création de schémas – contraintes d'​intégrité ​(H2) ======
  
 <fc #​ff0000>​version pour H2</​fc>​ <fc #​ff0000>​version pour H2</​fc>​
Ligne 12: Ligne 12:
   * **EMBAUCHE** ​ (__NumSS*, NumProj*__, DateEmb, Profil*)    * **EMBAUCHE** ​ (__NumSS*, NumProj*__, DateEmb, Profil*)
   * **GRILLE_SAL** (__Profil__,​ salaire) ​   * **GRILLE_SAL** (__Profil__,​ salaire) ​
- 
  
 ===== Exercice 2 ===== ===== Exercice 2 =====
 +Tester les contraintes existantes sur le schéma précédent en exécutant les commandes spécifiées dans ce fichier: {{ :​site:​enseignement:​licence:​2i009:​etu-tme8_ddl_ci_h2.pdf |TME8}}
 +===== Exercice 3 (facultatif) =====
  
 On considère le schéma relationnel suivant d’une application d’écoute de musique sur Internet de type Deezer : On considère le schéma relationnel suivant d’une application d’écoute de musique sur Internet de type Deezer :
Ligne 27: Ligne 28:
  
  
-Chaque album (table ALBUM) est identifié par un identifiant (albumId) et on stocke le titre (albumTitre),​ l’année de parution, le genre et le label. ​ Il y a exactement trois genres (jazzclassiquerock) et deux labels (SonyUniversal) possibles.+Chaque album (table ALBUM) est identifié par un identifiant (albumId) et on stocke le titre (albumTitre),​ l’année de parution, le genre et le label. ​ Il y a exactement trois genres ('jazz''classique''rock') et deux labels ('Sony''Universal') possibles.
  
-Les pistes de chaque album (table PISTE) sont identifiées par le numéro de piste (pisteId) et l’identifiant de l’album. On stocke le titre de la piste (pisteTitre), l’identifiant de l’interprète (interId), l’identifiant du compositeur (compId) et la durée en secondes. ​+Les artistes sont stockés dans la table ARTISTE qui contient l’identifiant (artistId) et le nom de l’artiste (32 charactères max). On distingue entre trois types d'​artistes ('​compositeurs',​ '​interprêtes',​ '​interprêtes-compositeurs'​). 
 + 
 +Les pistes de chaque album (table PISTE) sont identifiées par le numéro de piste (pisteId) et l’identifiant de l’al bum. On stocke le titre de la piste (obligatoire), l’identifiant de l’interprète (interId), l’identifiant du compositeur (compId) et la durée en secondes ​(spérieur à 0)
  
-Les artistes sont stockés dans la table ARTISTE qui contient l’identifiant (artistId) et le nom de l’artiste (“Bob Dylan”, “Coldplay”,​ ...). On distingue entre trois types d'​artistes ('​compositeurs',​ '​interprêtes',​ '​interprêtes-compositeurs'​) 
  
 Tous les comptes utilisateurs (table COMPTE) sont identifiés Tous les comptes utilisateurs (table COMPTE) sont identifiés
-par leur email et on stocke leur temps d'​écoute global. Les comptes avec un abonnement sont identifiés dans la table ABONNE.+par leur email (32 charactères max) et on stocke leur temps d'​écoute global ​(0 par défaut). Les comptes avec un abonnement sont identifiés dans la table ABONNE.
 Tous les utilisateurs peuvent écouter des chansons et donner un avis (score optionnel entre -5 et 5). Uniquement les abonnées peuvent maintenir une playlist (table PLAYLIST). Tous les utilisateurs peuvent écouter des chansons et donner un avis (score optionnel entre -5 et 5). Uniquement les abonnées peuvent maintenir une playlist (table PLAYLIST).
  
-Définissez le schéma H2 avec contrainte de clé (PRIMARY KEY et UNIQUE), contrainte référentielle (FOREIGN KEY), contrainte de domaine (valeurs possibles des attributs, NOT NULL) et contrainte de tuple (condition liant les valeurs des différents attributs pour tous les n-uplets+Question 1 : Définissez le schéma H2 avec contrainte de clé (PRIMARY KEY et UNIQUE), contrainte référentielle (FOREIGN KEY), contrainte de domaine (valeurs possibles des attributs, NOT NULL) et contrainte de tuple (condition liant les valeurs des différents attributs pour tous les n-uplets
 de la table). de la table).
 +
 +Question 2: Est-ce qu'il est possible qu'un compositeur d'une piste (table PISTE) soit un interprête dans la table ARTISTE ? Si oui, comment faudrait-il modifier le schéma pour éviter cette incohérence.
  
  
site/enseignement/licence/2i009/tme8_h2.1586963932.txt.gz · Dernière modification: 15/04/2020 17:18 par amann