Relation
Transcription
Relation
Le Modèle relationnel Licence Pro ATC Amel Guetat 05/02/2008 Introduction – Présentation informelle Grande simplicité : Une seule structure : la relation Une relation peut être représentée sous forme de tables titre année genre Alien 1979 Science Fiction Volte face 1997 Thriller Pulp Fiction 1995 Policier Relation Film Noms d’attributs Entité Définitions Relation et attribut Définitions Domaines : Un domaine de valeurs est un ensemble d’instances d’un type élémentaire. Ex: Entier Chaîne de caractères… Impossible dans le modèle relationnel de créer de nouveaux types de valeurs Pas de listes possibles Pas de tableaux… Définitions Attributs : Les attributs nomment les colonnes d’une relation. Il servent à la fois à indiquer le contenu de cette colonne, et à la référencer quand on effectue des opérations. Un attribut est toujours associé à un domaine. Toujours monovalué : il n’a toujours qu’une seule valeur (domaine de valeurs atomiques) Le nom d’un attribut peut apparaître dans plusieurs schémas de relations. Définitions Schéma de relation : Un schéma de relation est un nom suivi de la liste des attributs, chaque attribut étant associé à son domaine Syntaxe : R ( A1 : D1 , A2 : D2 ,..., An : Dn ) Ex : Film (titre: string, année: number, genre : string) On peut trouver dans un schéma de relation plusieurs fois le même domaine mais une seule fois un nom d’attribut Définitions Relation : sous-ensemble fini du produit cartésien d’une liste de domaines Extension d’une relation : contenu d’une relation Une extension change au cours du temps Propriétés : On ne peut pas trouver 2 fois la même ligne L’ordre des lignes n’a pas d’importance titre année genre Alien 1979 Science Fiction Volte face 1997 Thriller Pulp Fiction 1995 Policier Définitions Base de données : ensemble fini de relations. Le schéma de la base est l’ensemble des schémas des relations de cette base. Règles d’Intégrité Définition Les règles d’intégrité (R.I.) sont des assertions qui doivent être vérifiées à tout moment par les données contenues dans la base de données. Remarque: notion équivalente à celle de contrainte d’intégrité du modèle E.A. Trois type de R.I. complètent obligatoirement la description d’un schéma relationnel: (1) contrainte de clé (2) contrainte de référence (3) contrainte d’entité (1) Contrainte de clé Définition: “la clé d’une relation est un ensemble d’attributs minimum dont la connaissance permet d’identifier un tuple unique de la relation considérée”. Définition: “La contrainte de clé impose que chaque relation possède une clé”. Remarques: il peut exister plusieurs clés –> on en choisit une arbitrairement notion équivalente à l’identifiant dans le modèle E/A. (1) Contrainte de clé Exemples : Employé(Prénom, Nom, DateNaissance, DateEmbauche, Salaire, Magasin) Employé(Prénom, Nom, DateNaissance, DateEmbauche, Salaire, Magasin) Film(numFilm, Titre, Pays, Année, Note, Duree, Langue, Categorie) (2) Contrainte de référence (C.R.) Définition: “une contrainte de référence porte sur une relation r et impose que la valeur d’un groupe d’attributs apparaisse comme valeur de clé dans une autre relation s”. Une C.R. impose que tout tuple d’une relation r qui se réfère à une relation s doit se référer à un tuple existant dans la relation s. Une telle contrainte s’applique en général sur des relations qui décrivent des associations de la réalité perçue. (2) Contrainte de référence (C.R.) Exemple : Magasin(numMagasin,Adresse,numDirecteurFK ) Employé(numEmployé,Nom,Adresse) Vérification de l’intégrité référentielle assurée par le SGBD : les identifiants externes désignent nécessairement des tuples existants. (3) Contrainte d’entité Définition: “la contrainte d’entité impose que tout attribut faisant partie de la clé d’une relation soit non nul”. La vérification de cette contrainte doit se faire chaque fois que l’on insère un tuple dans la base de données. Passage de E/A au modèle relationnel Règles de passage : entités Pour chaque entité du schéma E/A: On crée une relation de même nom que l’entité. Chaque attribut de l’entité, y compris l’identifiant, devient un attribut de la relation. Les attributs de l’identifiant constituent la clé de la relation. Exemple id titre nom genre prénom année id Artiste (0,N) (1,1) Réalisation Film (1,1) DN (0,N) Rôle (0,N) Provenance (0,N) langue nom nom rôle Pays code Règles de passage : association de un à plusieurs Soit une association de un à plusieurs entre A et B : créer les relations RA et RB correspondant à A et B L’identifiant de B devient un attribut de RA (clé étrangère) • Nom choisi comme on veut Film (idFilm, titre, année, genre, idArtisteFK, codePaysFK) Artiste (idArtiste, nom, prénom, annéeNaissance) Pays (code, nom, langue) Film (idFilm, titre, genre, résumé, idMESFK, codePaysFK) Artiste (idArtiste, nom, prénom, annéeNaissance) Pays (code, nom, langue) Règles de passage : entités faibles Même chose qu’avant Nuance : la clé étrangère est une partie de l’identifiant de l’entité faible. Cinéma (nomCinéma, numéro, rue, ville) Salle (nomCinéma, no, capacité) Association de plusieurs à plusieurs Soit une association n-m entre A et B Créer les relations RA et RB correspondant à A et B Créer la relation RA-B correspondant à l’association entre A et B Les clés de RA et de RB deviennent attributs de RA-B L’identifiant de RA-B est la concaténation de ces deux clés étrangères Les attributs de l’association deviennent des attributs de RA-B Film (idFilm, titre, genre, résumé, idMESFK, codePaysFK) Artiste (idArtiste, nom, prénom, annéeNaissance) Role (idFilmFK, idActeurFK, nomRôle) Pays (code, nom, langue) Club vidéo Un club vidéo propose des cassettes vidéos et des DVD en location à ses membres. Pour chaque membre, on enregistre le nom, l’adresse, et le numéro de téléphone. On lui donne un numéro d’inscription qui l’identifie. Chaque support est caractérisé par son type (cassette ou DVD), un code identifiant et la date d’achat. Pour le film enregistré sur le support, on enregistre le titre (identifiant), son réalisateur, l’acteur vedette et le genre. Plusieurs supports peuvent être disponibles pour le même film, alors que pour certains films, il n’existe pas encore de supports proposés à la location. A tout instant, un support peut être loué par un membre du club.