La modélisation logique relationnelle Paternité - Partage des Conditions Initia
La modélisation logique relationnelle Paternité - Partage des Conditions Initiales à l'Identique : http://creativecommons.org/licenses/by-sa/4.0/fr/ Table des matières I - Cours 3 1. Introduction au modèle relationnel 3 1.1. Niveau logique 3 1.2. Définition du modèle relationnel 3 2. Les concepts fondamentaux du modèle relationnel : attributs, enregistrement, domaine 4 2.1. Domaine 4 2.2. Exercice 5 2.3. Attribut et enregistrement 5 2.4. Exemple : La relation "Vol" 6 3. Clés et clés étrangères dans le modèle relationnel : 6 3.1. Clé 6 3.2. Déterminer les clés 7 3.3. Clé primaire et clés candidates 7 3.4. Clé artificielle 8 3.5. Clé étrangère 9 3.6. Référence entre relations 10 3.7. Schéma relationnel 10 3.8. Exemple de schéma relationnel pour la géographie 12 4. Synthèse 13 4.1. Synthèse : Schéma relationnel 13 4.2. Bibliographie commentée sur le modèle relationnel 13 5. Définition formelle d'une relation 14 5.1. Produit cartésien 14 5.2. Relation 14 II - Exercices 15 1. Exercice 15 2. Exercice : Lab I- 15 Contenus annexes 17 Glossaire 19 Abréviations 20 Bibliographie 21 Index 22 ......................................................................... ................................................................................................................................... ..................................................................................................... ......................................................................................................................... ............................................................................................................................................ .............................................................................................................................................. ................................................................................................................ ............................................................................................................... ................................................ ...................................................................................................................................................... ............................................................................................................................ ......................................................................................................... ..................................................................................................................................... ..................................................................................................................................... ................................................................................................................ ......................................................................................................................... ..................................................................... ................................................................................................................... ....................................................................................................... .................................................................... ........................................................................... ............................................................................................................................. ............................................................................................................................................ .................................................................................................................... ......................................................................................................... 2 Stéphane Crozat (Contributions : Benjamin Lussier, Antoine Vincent, Dritan Nace) Cours I Le modèle relationnel est aux fondements des SGBDR∗. Il a été, et continue d'être, le modèle théorique dominant pour la représentation logique des base de données, même si le mouvement NoSQL propose des alternatives. Le modèle relationnel permet de reformuler le modèle conceptuel dans un formalisme - le tableau - beaucoup plus proche de l'implémentation informatique, bien qu'encore indépendant d'une solution technologique particulière. 1. Introduction au modèle relationnel Objectifs Connaître les fondements théoriques du modèle relationnel. 1.1. Niveau logique Le niveau logique est le lien entre le niveau conceptuel et l'implémentation effective de l'application. Le modèle conceptuel étant un modèle formel, le modèle logique a pour vocation d'être également un modèle formel, mais spécifiant non plus la réalité existante ou recherchée comme le modèle conceptuel, mais les données telles qu'elles vont exister dans l'application informatique. Pour assumer cette fonction, le modèle relationnel s'est imposé en réaction aux insuffisances des modèles antérieurs, les modèles hiérarchique et réseau, et de part la puissance de ses fondements mathématiques. Encore aujourd'hui dominant le modèle relationnel est un fondement indispensable à la conception de bases de données. Rappel Méthodologie générale de conception d'une base de données (cf. p.17) 1.2. Définition du modèle relationnel Introduction Le modèle relationnel a été introduit par Codd∗, en 1970 au laboratoire de recherche d'IBM de San José. Il s'agit d'un modèle simple et puissant à la base de la majorité des bases de données, encore aujourd'hui. Les objectifs du modèle relationnel, formulés par Codd, sont les suivants : Assurer l'indépendance des applications et de la représentation interne des données Gérer les problèmes de cohérence et de redondance des données Utiliser des langages de données basés sur des théories solides Stéphane Crozat (Contributions : Benjamin Lussier, Antoine Vincent, Dritan Nace) 3 Modèle relationnel Définition On appelle modèle relationnel un ensemble de concepts permettant de formaliser logiquement la description d'articles de fichiers plats, indépendamment de la façon dont ils sont physiquement stockés dans une mémoire numérique. Le modèle relationnel inclut des concepts pour la description de données, ainsi que des concepts pour la manipulation de données. Représenter le monde en tables Fondamental Le modèle relationnel permet de représenter les données que l'on va gérer à l'aide d'un très petit nombre de concepts très simples : Les relations ou tables : des lignes et des colonnes Les domaines de valeurs : chaque case d'une table prend une unique valeur dans un domaine pré-défini Les clés : il existe des cases dont les valeurs doivent être uniques et non nulles Les clés étrangères : il existe des cases qui doivent prendre une valeur existante dans les cases d'une autre table Extension du modèle relationnel Complément Le modèle relationnel est un standard, normalisé par l'ISO à travers son langage, le SQL. Il se veut néanmoins dès l'origine extensible, pour permettre de gérer des données plus complexes que les données tabulaires. Le modèle relationnel-objet est né de cette extension. 2. Les concepts fondamentaux du modèle relationnel : attributs, enregistrement, domaine Objectifs Connaître les fondements théoriques du modèle relationnel. 2.1. Domaine Domaine Définition Ensemble, caractérisé par un nom, dans lequel des données peuvent prendre leurs valeurs. Remarque Un domaine peut-être défini en intension∗ (c'est à dire en définissant les propriétés caractéristiques des valeurs du domaine, on parle aussi de compréhension) ou en extension∗ (c'est à dire en énumérant toutes les valeurs du domaine) Domaines définis en intension Exemple Tous les entiers Les réels inférieur à 5 Les booléen (vrai ou faux) Cours 4 Stéphane Crozat (Contributions : Benjamin Lussier, Antoine Vincent, Dritan Nace) Toutes les chaînes de 1 à 255 caractères Les valeurs monétaires, définie comme des décimaux avec deux chiffres après la virgule Les dates, définies comme des chaînes de 10 caractères comprenant des chiffres et des tirets selon le patron "00-00-0000" Les salaires, définis comme des valeurs monétaires compris entre 15.000 et 100.000 Domaines définis en extension Exemple Couleur : {Bleu, Vert, Rouge, Jaune, Blanc, Noir} SGBD : {Hiérarchique, Réseau, Relationnel, Objet, Relationnel-Objet} 2.2. Exercice Indiquez quelle définition et quel exemple correspondent respectivement aux mots intension et extension. {bleu, rouge, vert} Énonciation exhaustive de l'ensemble des objets du domaine Le domaine des couleurs Explicitation d'un domaine par la description de ses caractéristiques (en vue de sa compréhension abstraite, générale). Intension Extension 2.3. Attribut et enregistrement Attribut Définition On appelle attribut d'une relation, une colonne de cette relation. Un attribut est caractérisé par un nom et un domaine dans lequel il prend ses valeurs. Synonymes : Champs, Propriété, Colonne Enregistrement Définition On appelle enregistrement d'une relation, une ligne de cette relation. Un enregistrement prend une valeur pour chaque attribut de la relation. Synonymes : Tuple, N-uplet, Vecteur, Ligne Cours Stéphane Crozat (Contributions : Benjamin Lussier, Antoine Vincent, Dritan Nace) 5 Couleur : domaine des couleurs Exemple Relation R La relation R comporte les deux attributs A et B et les trois enregistrements <1,1>, <1,2> et <2,2> Attribut, domaine, ordre Remarque Un attribut se distingue d'un domaine car il peut ne comporter que certaines valeurs de ce domaine. Les colonnes de la relation ne sont pas ordonnées et elles ne sont donc repérées que par le nom de l'attribut. Valeur nulle Remarque Un enregistrement peut ne pas avoir de valeur pour certains attributs de la relation, parce que cette valeur est inconnue ou inapplicable, sa valeur est alors "null". 2.4. Exemple : La relation "Vol" Exemple Relation Vol 3. Clés et clés étrangères dans le modèle relationnel : Objectifs Connaître les notions de clés candidates, naturelles, artificielles, primaire, étrangère Aborder le principe d'éclatement des relations et de non-redondance. 3.1. Clé Clé Définition Une clé est un groupe d'attributs minimum qui permet d'identifier de façon univoque un tuple dans une relation. Fondamental Toute relation doit comporter au moins une clé, ce qui implique qu'une relation ne peut pas contenir deux tuples identiques. Cours 6 Stéphane Crozat (Contributions : Benjamin Lussier, Antoine Vincent, Dritan Nace) Attributs de clés unique et non null Attention Afin d'être déterminants pour l'identification d'un enregistrement, tous les attributs d'une clé doivent être valués, c'est-à-dire qu'aucun ne peut avoir de valeur null. Dire qu'un groupe d'attributs est une clé implique qu'il est unique et non null. Numéro d'étudiant Exemple Le numéro d'étudiant d'une relation Etudiant est une bonne clé car il y aura systématiquement une valeur non nulle. Le groupe d'attributs (nom, prénom) d'une relation Etudiant est en général une mauvaise clé, car les homonymes existent. 3.2. Déterminer les clés Détermination d'une clé Définir un groupe d'attributs comme étant une clé nécessite une réflexion sémantique sur les données composant ces attributs, afin de s'assurer de leur unicité. Fondamental La définition des clés est un acte de modélisation, elle ne renvoie pas donc pas à une vérité intangible, mais à la réalité telle qu'elle est représentée dans le modèle que l'on élabore. Exemple L'attribut numéro de sécurité sociale d'une relation personne peut paraître une bonne clé a priori car son unicité est assurée. Mais tout le monde n'en dispose pas forcément (les enfants, des étrangers), donc ce n'est une clé que si l'on considère des personnes affiliées à la sécurité sociale. 3.3. Clé primaire et clés candidates Clé primaire Définition Si plusieurs clés existent dans une relation, on en choisit une parmi celles-ci. Cette clé est appelée clé primaire. La clé primaire est généralement choisie : de façon à être immuable∗, c'est à dire à ne jamais changer une fois valuée pour la première fois de façon à ce qu'elle soit la plus simple, c'est à dire portant sur le moins d'attributs et sur les attributs de domaine les plus basiques (entiers ou chaînes courtes typiquement). Clés candidates Définition On appelle clés candidates l'ensemble des clés d'une relation qui n'ont pas été choisies comme clé primaire (elles étaient candidates à cette fonction). Cours Stéphane Crozat uploads/Philosophie/ la-modelisation-logique-relationnelle.pdf
Documents similaires










-
100
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Mar 18, 2021
- Catégorie Philosophy / Philo...
- Langue French
- Taille du fichier 0.6253MB