Retour : Page Principale > sommaire eFlore v4 > sommaire base de données
Dans le modèle eFlore, nous avons par exemple le module botaniste qui regroupe toutes les tables liées à un botaniste.
Dans DBDesigner, un module correspond à une "région". Un "région" peut être éditée et recevoir un commentaire. Nous renseignerons ce champ qui sera utiliser lors de la génération de la documentation.
Dans Dia, nous colorons les tables de la même couleur et nous créeons un "UML- SmallPackage" dont la valeur du stéréotype doit valoir wikini:module:nom_du_module afin de générer correctement la documentation.
Un nom de table est en minuscules .
Le nom d'une table à ses mots séparés par des soulignement : _
Le nom de la table doit commencer par le nom ou l'abréviation de la base de données du projet .
Exemple de noms de base de données:
Pour les modèles comprenant relativement peut de table et n'ayant pas de module, le nom ou l'abréviation du module peut être omis.
Exemple : pour la base de données eflore, nous avons le module Botaniste : eflore_botaniste ou pour le module Noyau de Génésia : gen_
Exemples complets :
Chaque abréviation doit être unique.
Si une abréviation existe déjà, rajouter la seconde lettre du nom du module ou si les modules ne sont pas utilisé la deuxième lettre du premier mot du nom de la table.
Par exemple : pour le module Projet ses tables avaient des abréviations qui existait déjà nous avons donc abrégés ses tables de la sorte : epr... et non ep...
Un nom des colonne est en minuscule .
Le nom d'une colonne à ses mots séparés par des soulignement : _
Le nom d'un colonne doit commencer par l'abréviation du nom de sa table .
Exemple complet :
Les colonnes de type clé étrangère sont placées en second dans la table.
Les colonnes de type standard sont placées en troisième position dans la table et suivent les règles suivantes :
Ses mots en minuscules sont séparés par des soulignement : _
Nous avons ensuite l' abréviation de la table possédant la clé étrangère suivie de celle de la table possédant la clé primaire correspondante.
Par exemple : les tables eflore_botaniste_nom et eflore_botaniste_type_nom ont pour nom de relation fk_ebn_ebtn .
La table possédant la clé étrangère est eflore_botaniste_nom (abrégée en ebn ) et la table possédant la clé primaire est eflore_botaniste_type_nom (abrégé en ebtn ).
Cette méthode est plutôt adaptée aux modèles complexes.
Ses mots en minuscules sont séparés par des soulignements : _
Par exemple : avoir_menu
Cette méthode est plutôt adaptée aux modèles relativement simples.
Convention de réalisation des modèles de bases de données
Contenu de cette page
La façon de réaliser des modèles de base de données et de nommer les tables (entités) et colonnes (attributs) avec les logiciels Mysql Workbench, DBDesignerfork, DBDesigner ou Dia.Logiciel de conception conseillé
En attendant que Mysql Workbench soit complètement fonctionnel sous Linux, nous conseillons l'utilisation de DBDesignerFork.Les modules
Nous appelons module les regroupements de tables d'un modèle ayant un rapport entre elles.Dans le modèle eFlore, nous avons par exemple le module botaniste qui regroupe toutes les tables liées à un botaniste.
Dans DBDesigner, un module correspond à une "région". Un "région" peut être éditée et recevoir un commentaire. Nous renseignerons ce champ qui sera utiliser lors de la génération de la documentation.
Dans Dia, nous colorons les tables de la même couleur et nous créeons un "UML- SmallPackage" dont la valeur du stéréotype doit valoir wikini:module:nom_du_module afin de générer correctement la documentation.
Les tables
Comment nommer une nouvelle table ?
Un nom de table est unique .Un nom de table est en minuscules .
Le nom d'une table à ses mots séparés par des soulignement : _
Le nom de la table doit commencer par le nom ou l'abréviation de la base de données du projet .
Exemple de noms de base de données:
- eflore : pour la base de données de consultation du projet eFlore.
- gen : pour la base de données du noyau de Génésia.
Pour les modèles comprenant relativement peut de table et n'ayant pas de module, le nom ou l'abréviation du module peut être omis.
Exemple : pour la base de données eflore, nous avons le module Botaniste : eflore_botaniste ou pour le module Noyau de Génésia : gen_
Exemples complets :
- eflore_botaniste_composer_intitule_abreviation : base de données eflore avec module botaniste pour une table servant de liaison (=association du modèle conceptuel de Merise) (présence du verbe à l'infinitif: composer).
- gen_noyau_menu : base de données genesia abrégée en gen avec module noyau pour une table "classique" (pas de verbe à l'infinitif dans son nom).
- eflore_zg_intitule : base de données eflore avec nom de module abrégé zg (= "zone géographique") pour une table "classique" (pas de verbe à l'infinitif dans son nom).
Comment abréger une table ?
L'abréviation du nom d'une table se compose de la première lettre de chaque mot du nom de cette table.Chaque abréviation doit être unique.
Si une abréviation existe déjà, rajouter la seconde lettre du nom du module ou si les modules ne sont pas utilisé la deuxième lettre du premier mot du nom de la table.
Par exemple : pour le module Projet ses tables avaient des abréviations qui existait déjà nous avons donc abrégés ses tables de la sorte : epr... et non ep...
Les colonnes
Comment nommer une nouvelle colonne ?
Un nom de colonne est unique .Un nom des colonne est en minuscule .
Le nom d'une colonne à ses mots séparés par des soulignement : _
Le nom d'un colonne doit commencer par l'abréviation du nom de sa table .
- Par exemple : pour la table eflore_botaniste_composer_intitule_abreviation nous aurons ses colones qui commencerons par ebcia .
- l'abréviation id pour une clé primaire
- l'abréviation ce pour une clé étrangère
Exemple complet :
- ebcia_id_intitule_abrege_botaniste pour le nom d'une des colonnes clé primaire de la table eflore_botaniste_composer_intitule_abreviation .
Comment classer les colonnes dans une table ?
Les colonnes de type clé primaire sont placées en permier dans la table.Les colonnes de type clé étrangère sont placées en second dans la table.
Les colonnes de type standard sont placées en troisième position dans la table et suivent les règles suivantes :
- la colonne "notes" ou équivalante est toujours placée en dernier. Elle correspond à un champ de commentaires libre.
- les colonnes sont regroupées en fonction de leurs rapports, ou de leur ordre d'affichage.
Les relations entre tables
DIA ou DBDesigner permettent seulement de réaliser un modèle ER, c'est à dire Entité-Relation (équivalant au modèle physique de données dans MERISE). Dans ce type de modèle, les relations entre les tables permettent seulement de connaître les relations de dépendance des tables entres elles.Comment nommer une relation ?
Deux méthodes possibles, choisissez en une et restez homogène :Méthode 1
Une relation commence par fk.Ses mots en minuscules sont séparés par des soulignement : _
Nous avons ensuite l' abréviation de la table possédant la clé étrangère suivie de celle de la table possédant la clé primaire correspondante.
Par exemple : les tables eflore_botaniste_nom et eflore_botaniste_type_nom ont pour nom de relation fk_ebn_ebtn .
La table possédant la clé étrangère est eflore_botaniste_nom (abrégée en ebn ) et la table possédant la clé primaire est eflore_botaniste_type_nom (abrégé en ebtn ).
Cette méthode est plutôt adaptée aux modèles complexes.
Méthode 2
Une relation commence par un verbe à l'infinitif et est suivie d'un complément .Ses mots en minuscules sont séparés par des soulignements : _
Par exemple : avoir_menu
Cette méthode est plutôt adaptée aux modèles relativement simples.