Conception d'une bd

Disponible uniquement sur Etudier
  • Pages : 5 (1034 mots )
  • Téléchargement(s) : 0
  • Publié le : 21 mai 2011
Lire le document complet
Aperçu du document
Conception de Base de Données
Explication sur la Conception de Base de Données
Introduction
A la vue de plusieurs questions sur les bases de données, et surtout la conception du schéma de base. En effet, bien souvent les problèmes de certaines personnes sont dus à des bases mal pensées à la base, et qui par la suite peuvent empêcher certaines possibilités qui peuvent être demandées dans la vied'un projet. Cet article n'est pas à but théorique mais va être développé à partir d'un exemple de façon à mieu comprendre l'importance de la réalisation du schéma de base, avant de s'attaquer au codage (que ce soit en ASP ou PHP).
Projet de Site Marchand
Je vais choisir un exemple simple que tout le monde pourra facilement comprendre, car tout le monde a déjà été confronté à un site marchandavec vente d'articles en ligne. Définition du projet Ce site va être très simple avec une demande d'identification de l'acheteur afin de mémoriser les articles déjà commandés pour chaque acheteur. On va faire un site simple avec une liste d'articles proposés très basique et des information basique pour les utilisateurs, on peut encore bien plus perfectionner la base. Définition des besoins On vasimplement stocker les informations basiques concernant les articles (Nom, Prix Définition, Marque) et les informations nécessaires à l'envoie de ces produits à l'acheteur (Nom, Prénom, Adresse, Code Postal, Ville, Pays, Mot de passe). Donc d'aspect on peut déjà dire que les informations à stocker sont très simples et que la base ne va pas être très compliquée à monter. NB : Dans tous les projets,il existe un cahier des charges. Il est soit implicite (cas d'un développement personnel), soit explicite (quand le projet est demandé par une autre personne). De même, il peut être écrit (cas des contrats entre client et vous) soit oral (cas où un supérieur vous demande de lui faire un site ou une page, ...). Quoi qu'il en soit, celui-ci devra toujours rester à l'esprit de la personne qui varéaliser le projet, car il sera le fil conducteur de celui-ci. Dans le cas contraire, on risque de déroger à la demande originale et de finir complètement hors sujet.
Donc, pour cet exemple, nous avons besoin :
• Une Liste des articles afin de présenter ceux-ci à l'acheteur potentiel
• Un stockage des informations sur le client pour son historique des achats
• Un enregistrement de l'utilisateur avecidentification par mot de passe, afin que celui-ci puisse voir ce qu'il a déjà acheté (un peu comme Amazon)
• On voit ici que la même marque peut arriver plusieurs fois (donc on va scinder la table article en 2 avec une table article réelle et une table Marque, avec un lien entre les 2)
• De la même facon pour le Pays et la ville qui sont des données redondantes
On a donc la liste des besoinsréférencés, on va donc voir comment représenter les données et donc la base. Données à stocker Pour chaque table, on va lister les données à stocker dans cette base, table par table, en précisant le type de donnée qui va être choisi (non obligatoire). ARTICLES
• id_article (Clé unique primaire et autoincrémentée)
• nom_article (Champ type texte)
• prix_article (Champ type numérique)
•definition_article (Champ type texte à taille variable - memo(sous Access) ou nvarchar(sous SQL Server))
• marque_article (Champ numérique en liaison avec la table MARQUE, correspondra à l'ID de la marque)
MARQUE
• id_marque (Clé unique primaire et autoincrémentée)
• nom_marque (Champ type texte)
ACHETEUR
• id_article (Clé unique primaire et autoincrémentée)
• nom_acheteur (Champ type texte)
•prenom_acheteur (Champ type texte)
• adresse_acheteur (Champ type texte)
• code_postal_acheteur (Champ type texte)
• ville_acheteur (Champ numérique en liaison avec la table VILLE, correspondra à l'ID de la ville)
• pays_acheteur (Champ numérique en liaison avec la table PAYS, correspondra à l'ID du pays)
• password_acheteur (Champ type texte)
VILLE
• id_ville (Clé unique primaire et...
tracking img