Normalisation en bases de données
Chronologie : Normalisation en bases de données. Recherche parmi 300 000+ dissertationsPar Zakaria Zak • 17 Octobre 2017 • Chronologie • 1 711 Mots (7 Pages) • 661 Vues
Normalisation bases de données
Historique du document
Raison | Crédit | Date |
| Robert Aubé | 26 mars 2015 |
| Robert Aubé | 14 septembre 2014 |
| Robert Aubé | 12 avril 2010 |
| Robert Aubé | 20 avril 2009 |
| Robert Aubé | 15 avril 2009 |
| Robert Aubé | 27 mars 2008 |
| Robert Aubé | 3 avril 2007 |
Objectifs du document
- Définir les normes pour obtenir une certaine homogénéité sur la façon de travailler dans les bases de données;
- Définir une méthode de travail qui facilite l’ouvrage des programmeurs;
- Favoriser les échanges de codes entre les individus appelés à travailler sur les différents systèmes.
Table des matières
1. Introduction 2
2. Vocabulaire 2
3. Normalisation des noms d’objet 3
3.1. Nom d’une table 3
3.2. Nom d’une table de jointure 3
3.3. Nom d’une vue 3
3.4. Nom des colonnes 4
3.4.1. Nommez les clés étrangères 5
3.4.2. Ordre de présentation des noms de colonne dans une table 5
3.4.3. Tailles des données des colonnes 5
3.5. Nom des index 6
3.6. Nom des contraintes de clé étrangère 6
4. Écriture des requêtes 7
5. Référence 7
- Introduction
Ce document a pour but de vous proposer des méthodes et une normalisation interne de l'ensemble des éléments composant une base de données.
Une normalisation interne (règle propre à l'entreprise) a beaucoup d'intérêt en matière de développement informatique : elle facilite le travail de tous, en équipe, comme le travail solitaire. Elle permet de repérer facilement la nature et le contenu d'un objet par son simple nom évitant ainsi d'établir un descriptif très complet de l'ensemble des composants d'une base de données. Enfin, elle optimise l'exécution des procédures et requêtes.
Des règles simples et de bons sens sont un gage d'application facile à écrire, bien développée et surtout PORTABLE d'un environnement l'autre ou d'un SGBDR à l'autre.
- Vocabulaire
- Une entité est un ensemble cohérent de données ayant des caractéristiques communes (PERSONNE, VEHICULE...)
- Une relation (ou association) représente un moyen de relier, souvent par une action deux ou plus de deux entités (personne CONDUIT véhicule)
- Un attribut est une propriété ou caractéristique qualifiant l'entité (personne.SEXE, vehicule.IMMATRICULATION). Il possède un nom et un type de donnée
- Un domaine est l'ensemble des valeurs que pourra prendre l'attribut. (sexe = [HOMME, FEMME])
- La cardinalité est le nombre possible des liens d'une relation (personne conduit 0 ou 1 véhicule, personne possède 0 ou N véhicule)
- Un identifiant ou clé primaire est un attribut ou un ensemble d'attributs permettant d'identifier de façon unique une occurrence de l'entité (le n° d’assurance sociale 271 629 912 permet d'identifier de manière unique une personne)
- Une clé étrangère est un champ de base de données de type clé primaire inscrit dans une table secondaire ou table fille permettant la jointure à la table primaire ou table parent.
- Une table de référence est une table dont les données changent très rarement (exemple : table des noms de pays)
- Une table de paramètres est une table qui regroupe les paramètres du système. (exemples : les couleurs des composantes, le nom du créateur du système)
- Normalisation des noms d’objet
Les noms des objets d’un modèle ou d'un schéma devront être significatifs et pertinents. Ils devront être constitués uniquement des caractères suivants :
[a .. z] + [A .. Z] + [0 .. 9] +[ _ ]
Avec les restrictions suivantes :
- ne pas dépasser 128 caractères
- ne doit pas commencer par un chiffre
- ne peut avoir plusieurs caractères "blanc souligné" de suite
- la casse n'a pas d'importance
- le nom ne doit pas être un mot réservé de SQL (exemples : date, type…)
- Les lettres accentuées (é à ù ï É ...), les "kanas" (ç œ ...), les caractères de ponctuation (, ; : ! ? ...) et autres caractères spéciaux, comme le blanc, sont proscrits.
- Nom d’une table
Elle doit reprendre le corps du nom de l’entité, où à défaut (table de jointure) le nom de la relation si cette dernière est nommée. Elle doit être suffixée par un trigramme unique au sein de la base de données, permettant l’identification rapide de la table.
Exemples :
client_cli | table fonctionnelle des clients |
ligne_facture_lfc | table Ligne de facture |
pays_pay | table de référence des pays |
usager_usa | table système des utilisateurs |
- Nom d’une table de jointure
Une table de jointure doit avoir un nom significatif, et comme une table, elle doit être suffixée par un trigramme unique au sein de la base de données, permettant l’identification rapide de la table.
Exemples :
ligne_facture_lfc | table Ligne de facture |
- Nom d’une vue
Doit avoir le nom le plus significatif possible, mais doit être systématiquement préfixée par v_.
Exemples :
...