Batch Index du Forum
S’enregistrerRechercherFAQMembresGroupesConnexion
Répondre au sujet Page 1 sur 1
[Chapitre I.1] - Le modèle relationnel
Auteur Message
Répondre en citant
Message [Chapitre I.1] - Le modèle relationnel 
Le modèle relationnel

Introduction au vocabulaire lié au modèle relationnel





Le modèle relationnel est un modèle d’organisation des données sous forme de table (tableaux de valeurs) où chaque table représente une relation, au sens mathématique d’ensemble.
De fait dans l’exemple ci-dessous figurent l’ensemble des équipes, des coureurs, des étapes, des temps réalisés et enfin l’ensemble des pays participants (l’exemple sous son ensemble représente la gestion simplifiée des étapes d’un Tour De France).





EQUIPE
CodeEquipe 
 NomEquipe
DirecteurSportif 
 BAN
BANESTO 
Eusebio UNZUE 
 COF
COFIDIS 
Cyrille GUIMARD 
 CSO
CASINO 
Vincent LAVENU 
 ...
... 
... 


COUREUR
NumeroCoureur 
NomCoureur 
CodeEquipe 
CodePays 
 8
ULLRICH Jan 
TEL 
ALL 
 31
JALABERT Laurent 
ONC 
FRA 
 61
ROMINGER Tony 
COF
SUI 
 ...
... 
...
... 


PAYS
CodePays 
NomPays 
 ALL
ALLEMAGNE 
 AUT
AUTRICHE 
 BEL
BELGIQUE 
 ...
... 


TEMPS_REALISE
 NumeroCoureur
NumeroEtape 
TempsRealise 
 8

04:54:33 
 8

04:48:21 
 8

06:27:47 
 ...
... 
... 


ETAPES
 NumeroEtape
DateEtape 
VilleDepart 
VilleArrivee 
NbKm 
 1
06-jul-10 
ROUEN 
FORGES-LES-EAUX 
192 
 2
07-jul-10 
ST-VALERY-EN-CAUX 
VIRE 
262 
 ...
... 
... 
... 
...



Les tables sont constituées de colonnes appelées attributs et de lignes appelées n-uplets. Chaque attribut ne contient qu’une seule valeur pour chaque n-uplet. Ainsi, retenez que chaque attribut relationnel contient une valeur qui est unique, il ne serait donc pas valable d’avoir n numéros de téléphones dans un attribut ‘téléphone’ mais plutôt d’avoir n attributs : ‘téléphone portable’, ‘téléphone fixe’…


Chaque table doit posséder une clé primaire constituée par un ensemble minimum d’attributs permettant de distinguer chaque n-uplet de la relation par rapport à tous les autres. Chaque ensemble de valeurs formant la clé primaire d’un n-uplet est donc unique au sein d’une table.


→ Ainsi dans la table coureur, chaque coureur possède un NumeroCoureur différent . C’est la clé primaire.





Retrouvez les clés primaires de chaque relations dans l'exemple :


Clé primaire de la relation COUREURS : 
NumeroCoureur

Clé primaire de la relation EQUIPES :
CodeEquipe

Clé primaire de la relation ETAPES :
NumeroEtape, DateEtape

Clé primaire de la relation PAYS :
CodePays

Clé primaire de la relation TEMPS : 
NumeroCoureur, NumeroEtape




Les liens sémantiques ou règles de gestion de données, entre les ensembles, sont réalisés grâce à des clés étrangères faisant elles-même obligatoirement référence à des clés primaires d’autres tables.


→ De fait, dans la table COUREURS, la clé étrangère CodeEquipe fait référence à la clé primaire CodeEquipe dans la table EQUIPES et traduis les deux règles de gestion suivantes :
→ Un COUREUR appartient à une EQUIPE
→ Une EQUIPE est composée de plusieurs COUREURS


Il existe donc deux grand type de lien : Un-Plusieurs comme ci-dessus et Plusieurs-Plusieurs, dont la réalisation un peu plus complexe nécessite la création et l’utilisation d’une table intermédiaire, que j’appellerai personnellement table de liaison, qui aura comme particularité d’avoir une clé primaire formée des clés étrangères des tables quelle relie.



Retrouver un autre lien Un-Plusieurs et Plusieurs-Plusieurs et écrire les deux règles (chacun) de gestions qui le justifie. Ensuite, pour le lien P-P, retrouver la table de liaison correspondante.



Représentation


Le modèle relationnel est le plus souvent décrit sous forme textuelle. Il se peut que vous retrouviez l’ancienne syntaxe de représentation textuelle utilisant le soulignement pour la clé primaire et le caractère générique * pour les clés étrangères, comme suit :
Citation:
 TABLE(clé_primaire, clé_étrangère*, clé, clé)


Mais l’évolution des normes ont fait que cette syntaxe eu évoluée et laissa place à :
Citation:
TABLE(clé_primaire, clé_étrangère*, clé, clé)
Clé primaire : clé_primaire
clés étrangères : clé_étrangère1, clé_étrangère2, clé_étrangère3


On peut aussi le représenter sous forme graphique, de manière à mieux visualiser et interpréter les liens sémantiques :



*le sens des flèches va de la clé étrangère vers la clé primaire, l'image sera édité prochainement avec le bon outil pour un fléchage au normes



Règles de gestion correspondantes :


Un COUREUR appartient à une EQUIPE
Une EQUIPE est composée de plusieurs COUREURS


Un COUREUR est originaire d’un PAYS
Un PAYS est représenté par plusieurs COUREURS


Un COUREUR participe à plusieurs ETAPES
Une ETAPE fait participer plusieurs COUREURS






En conclusion ...


La conception d’une base de données relationnelle passe d’abord par l’identification des objets de gestion (tables) et des règles de gestion (liens) du domaine modélisé grâce à des interviews des utilisateurs l’étude de documents manipulés, des fichiers existants etc.

Une fois énoncées et validées, ces règles nous conduisent automatiquement à la structure du modèle relationnel correspondant qui permet de savoir comment seront structurées les tables de la base de données.
 
 
<font face=]



Dernière édition par Logan le Dim 25 Sep 2016 - 14:40; édité 4 fois

______________________________________________________
│Øδ@π.
Visiter le site web du posteur Skype
Message Publicité 
PublicitéSupprimer les publicités ?


Répondre en citant
Message [Chapitre I.1] - Le modèle relationnel 
Hey c'est sympa mais j'ai quelques remarques à te faire..

Je pense que tu abordes trop le coté technique.. J'ai l'impression de lire un article de wikipedia, tu aurais du axer ton tuto sur vraiment comment les bases de données fonctionnent (Quels moteurs, les systèmes, comment faire des requêtes, des exemples etc) je pense que ton tuto, malgré qu'il sois très bien écris, et plutôt difficile a prendre en main.



Répondre en citant
Message [Chapitre I.1] - Le modèle relationnel 
Il faut savoir que je prend mes propres cours comme support. Ici c'est une introduction, la base théorique avant de se lancer dans la pratique. Donc de fait le vocabulaire de base et les différentes façons de représenter une DB. Tout ça avant de se lancer techniquement par la suite. Chose à toujours faire dans ce sens.

Il est normal que le premier chapitre soit plus théorique que les autre, faut savoir marcher avant de courir. Il faut se dire aussi que les prochains chapitre, de plus en plus technique, donnerons du sens à ces chapitres théoriques. Donc même si vous ne comprenez pas tout pour le moment, ça devrais prendre forme en continuité Okay

N'hesite pas à répondre j'aime la critique et je prend note Wink




______________________________________________________
│Øδ@π.
Visiter le site web du posteur Skype
Répondre en citant
Message [Chapitre I.1] - Le modèle relationnel 
Après je parle pour moi mais j'ai appris le PHP/HTML/CSS/Batch sans réellement de coté théorique, plus des tuto ou on me dis ,

echo "coucou"; donne coucou en php

Après c'est sur que oui c'est normal d'aborder un peux de théorique mais je trouve que faire des tuto plus axé sur la pratique permet déjà de
garder la personne qui lis le tuto (Je me suis perdu au bout de quelques lignes, personnellement) mais aussi de l’intéressé à découvrir comment ça
marche j'aurais plus vu ce tuto organisé comme ça:

Présentation > Bref présentation du principe de base
Moteurs etc > Parler de MySQL, NoSQL, Cassandra etc
Exemples > Des exemples par exemple comment extraire des info/ comment injecter des infos etc
Des petits exercices


Citation:
Donc de fait le vocabulaire de base et les différentes façons de représenter une DB. Tout ça avant de se lancer techniquement par la suite. Chose à toujours faire dans ce sens.


Puis dans un sens j'ai jamais appris tout ça et pourtant j'ai crée des sites qui utilisais du MySQL, Stormheberg mon ancien projet était en parti en MySQL, ainsi que quelque un de mes script perso Smile


Attention je ne dis pas que ton tuto est inutile ou mal formulé, loin de la! mais juste qu'il est à mon sens trop théorique pour ce que c'est Smile



Répondre en citant
Message [Chapitre I.1] - Le modèle relationnel 
Le souci étant que le but de mon cours, et non tuto, est d'apprendre tout simplement comme un professionnel, donc en respectant les normes et les principes qui s'impose à tout le monde, normalement.

Maintenant je le redis, ici c'est l'introduction. Ça te donne le vocabulaire de base et comment représenter une DB. Encore une fois même si tu t'y perd ça prendra forme avec les prochains chapitres qui seront eux, comme tu les aimes.

Si tu veux un tuto plus accès sur "ça ça fait ça" je t'invite à regarder mes prochains [MEMO] qui suivront exactement ce dessein Wink


EDIT : Est-ce qu'une bref synthèse en fin de cours t'aiderait à y voir plus clair ?




______________________________________________________
│Øδ@π.
Visiter le site web du posteur Skype
Message [Chapitre I.1] - Le modèle relationnel 


Montrer les messages depuis:
Répondre au sujet Page 1 sur 1
  



Index | créer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Copyright 2008 - 2016 // Batch