mysql. une base de données est un ensemble structuré et organisé permettant le stockage de...
TRANSCRIPT
MySQL
Une base de données est un ensemble structuré et organisé permettant le stockage de grandes quantités d’information dans un système informatique
Dans le cas d’un flat file database, toutes les informations sont stockées dans un seul fichier
Chaque record contient sa propre information
Ces fichiers sont plus simples à créer mais ils gaspillent beaucoup d’espace et sont plus difficile à modifier. (POURQUOI?)
Dans la page qui suit, je vous démontre le contenu d’une base de données qui associe le nom d’un client, le numéro de commande et le produit acheté.
Quelle semble être la difficulté avec cette base de données?
N. decommande
Date Produit Quant. Prix Nom Adresse du client
1000 6 avril 08 Télévision 1 799.99 DanielLegros
6588, rue carrière, Orleans
1000 6 avril 08 Crayons 250 0.12 DanielLegros
6588, rue carrière, Orleans
1000 6 avril 08 Table 3 99.97 DanielLegros
6588, rue carrière, Orleans
1001 8 avril 08 Papiers 500 0.01 YvesCorbeil
123, rue propre, Gatineau
1001 8 avril 08 PVR 1 399.99 YvesCorbeil
123, rue propre, Gatineau
Plusieurs informations sont répétées: Numéro de commande Date Nom du client Adresse
L’information doit être entrée plusieurs fois inutilement
Avec la répétition de l’information, il y a un gaspille d’espace
Si le client déménage, plusieurs records doivent être modifiés
Très difficile de retrouver un record spécifique
La base de données relationnelle adresse ces problèmes en créant une base de donnée qui se sert de plusieurs tables pour gérer l’information.
Dans le cas de la compagnie XYZ, la base de données serait divisée en trois tableaux: Client Commande Produits
Tableau 1: Clients Tableau 2: Commandes Tableau 3: Produits
ID du client ID de la commande ID du produit
Prénom du client ID du client ID de la commande
Dernier nom du client Date de commande Description du produit
Adresse du client Quantité commandée
Chaque client aura une seule entrée. Celle-ci sera ajoutée au tableau 1 – client.
Si un client place une deuxième commande, il peut simplement référer à son client ID pour fournir ses détails
De même façon, si une commande contient plus qu’un produit, le numéro de commande et la date ne seront pas répétés pour chaque produit
Avant de pouvoir créer la base de données, il faut déterminer les besoins pour celle-ci.
Si la base de données existe déjà, nous devons vérifier si des champs se répètent inutilement dans le but d’améliorer l’efficacité
Comment pouvons-nous déterminer quels tableaux créer? Obtenir des copies de formulaires d’entrées
ou de rapports Identifier les objets clés qui seront gérés par
la base de données. Ceci peut être quelque chose de tangible tels qu’une personne ou un produit ou quelque chose de non-tangible tel qu’un numéro de transaction
Généralement, il existe quelques objets clés pour chaque base de données. Ceci facilitera la prochaine tâche.
Une fois que les objets clés sont identifié, nous devons établir les relations entre tous les champs.
Par la suite, nous devons déterminer le type d’information que chaque champ contiendra (text, integer, boolean, etc..)
Établissez un champ identificateur. Ce champ sera contiendra une valeur unique pour pouvoir référer à un record spécifique du tableau.
Exemples de champs uniques?
Établissez des relations entres les champs. Dans la compagnie XYZ, nous avons:
Quand vient le temps de nommez les champs, voici quelques conventions à tenir compte: Utiliser un nom qui représente bien les
données contenu dans cette colonne Ne pas utiliser d’espaces. Au lieu, utiliser:
NomClient ou nom_client
Le champ identificateur aura une propriété spéciale: Primary key
Les données dans la clé primaire ne pourront pas être redoublées.
Habituellement, on utilise un numéro de référence de façon que chaque record augmente cette valeur de 1 mais ce n’est pas la seule façon d’utiliser la clé primaire.
Excel (flat file): pas très efficace avec une base de données plus complexe
Access (stand-alone): génère un seul fichier que l’on peut envoyer
MS SQL: Très puissant et utilisé avec produits Windows ainsi que VS.net
Open source (gratuit, code disponible) Fonctionne sur plusieurs plateformes Utilisé surtout sur un serveur L.A.M.P. L.A.M.P.:
Linux = Système d’exploitation Apache = Serveur Web MySQL = Base de données PHP = Programmation pour sites web
Google Yahoo Ticketmaster Neopets NASA Youtube Wikipedia