<< Retour au sommaire

 

Introduction aux bases de données

 

 

Le sommaire :

  1. Qu’est-ce qu’une base de données ?
  2. Le dossier des bases de données de EasyPHP.

 

 

Qu’est-ce qu’une base de données ?

 

Habituellement, lorsque vous manipulez des documents, il s’agit bien souvent de documents de types texte, son, vidéo, ETC

Jusqu’alors, ces documents que vous exploitiez se présentaient comme des cahiers, avec les caractéristiques suivantes :

 

 

  1. Une étiquette sur la couverture avec en informations, le nom du cahier, son type,

c’est-à-dire son extension et sa taille.

  1. Lorsque vous ouvriez ce cahier, il y avait des pages qui pouvaient contenir des informations dont la structure n’avait aucune rigidité.

Par exemple, dans un cahier de type texte, avec l’extension « TXT », vous pouviez y saisir des informations sans vous soucier le moins du monde de la structure des pages.

Vous pouviez écrire un bloc présentation en première page, un petit texte d’introduction dans la deuxième page, et, pourquoi pas, une poésie dans la troisième page. Dans des logiciels plus évolués tel que WORD, vous pouviez aller beaucoup plus loin en y associant du texte, des images, des photos et même des animations. Mais quoi qu’il en soit, même avec WORD, vous aviez la liberté de faire évoluer vos documents sans avoir à vous soucier de la moindre structure des pages. De toute façon, la manière de créer, de modifier et de consulter ces documents était toujours identique, c’est-à-dire de les ouvrir dans les logiciels appropriés.

Dans l’univers de la base de données, on utilise des fichiers de données, c’est-à-dire des cahiers dont chaque page est structuré à partir d’un modèle prédéfini par vous-mêmes.

 

Par exemple, le carnet d’adresses de WINDOWS est une fenêtre qui gère une petite base de données, donc, des fichiers de données.

En conservant l’exemple du cahier, imaginons que je crée un fichier de données pour y enregistrer mes contacts.

 

Dans le gestionnaire de base de données, je vais tout d’abord procéder à une étape de déclaration de mon fichier de données.

Je vais donc lui donner un nom. Il s’appellera « Mes contacts ».

Je déclare donc un cahier de données qui s’appelle « Mes contacts ».

Maintenant je vais procéder à la déclaration de son contenu.

Chaque page de ce cahier devra être moulée à partir du modèle suivant :

 

Je veux un nom qui sera une zone de texte, je veux un prénom qui sera une zone de texte, je veux une adresse qui sera une zone de texte un peu plus longue, mais avec la possibilité d’y introduire des chiffres, je veux une zone pour le code postal qui sera numérique, et pour finir, je veux une zone texte pour la ville.

 

Voilà, mon fichier de données est déclaré et il s’appelle : « Mes contacts ».

Il est de type fichier de données.


Chaque page de ce fichier de données pourra contenir les informations suivantes :

Un nom de type texte,

Un prénom de type Texte,

Une adresse de type texte,

Un code postal de type numérique,

Une ville de type texte.

 

dans ce cahier de type fichier de données, il y aura autant de pages que de contacts.

Logique non !

Puisqu’il est structuré…

 

Un peu de vocabulaire de base :

 

Dans EasyPHP, on ne dit pas un fichier de données mais une table.

Dans la table, on ne dit pas une page mais un enregistrement.

Chaque information de l’enregistrement est appelée champ.

Par exemple, le nom est un champ, le prénom un autre champ ETC

 

Bon, il faut compliquer un peu car, tout ce que vous venez de lire et bien trop simple pour vous !

 

Voici la dernière chose à digérer :

 

Imaginons maintenant que nous souhaitions créer un autre fichier de données afin de gérer les rendez-vous avec les contacts qui sont enregistrés dans notre fichier précédemment élaboré.

 

Il va falloir donc créer une autre table, et la nommer « Mes rendez-vous ».

Chaque enregistrement de cette table, c’est-à-dire chaque page du cahier, contiendra les champs suivants :

 

La date du rendez-vous, l’heure du rendez-vous, le lieu du rendez-vous, et pourquoi pas, une zone observations.

Donc 4 champs pour ma table.

 

Nous avons maintenant une nouvelle situation !

Oui, en fait, dans une base de données, nous n’avons pas le droit de dupliquer des informations…

Alors, si nous voulons gérer des rendez-vous, il nous faut une table contacts et une table rendez-vous, sinon, on serait obligé de réécrire les mêmes données propres à un contact, et ce, pour tous les rendez-vous qu’il aurait avec vous !

Alors que c’est mieux d’écrire qu’une seule fois le nom du contact, son téléphone, son adresse Etc…

 

Du coup maintenant, un enregistrement de la table « Mes contacts » peut avoir plusieurs enregistrements dans la table « Mes rendez-vous ».

Alors, comment va-t-on faire le rapprochement entre les contacts et les rendez-vous ?

 

Vous êtes bien d’accord avec moi ?

Un contact peut avoir plusieurs rendez-vous avec vous, mais, et oui, un rendez-vous ne peut appartenir qu’à un seul contact !

 

Quel Bazard !

 

Il va donc falloir trouver un moyen d’introduire, dans les enregistrements, un champ qui permettra d’identifier avec certitude les rapports entre les enregistrements des deux tables.

 

Eh bien nous n’avons qu’à ajouter un champ identifiant qui correspondra à un numéro de contact.

Nous mettons ce champ dans chaque enregistrement des deux tables, ainsi, nous saurons que le rendez-vous à ROCHEFORT, le 14 juillet, à 17 heures, appartiendra à Monsieur DURAN puisque nous seront en mesure de réaliser la relation grâce à l’identifiant que l’on appelle aussi une clef.

Lorsqu’une clef est le principal identifiant d’un enregistrement de table, elle est dite primaire, et s’il s’agit d’une clef de second ordre, elle est dite secondaire.

 

Bon revenons à notre exemple…

Monsieur durant aura par exemple le numéro 0024.

Cet identifiant sera inséré dans les champs des deux tables, on lui donnera, à ce champ, le nom par exemple de « Identifie-contact ».

Pas mal non !

 

Puisque cette clef sera le moyen d’identifier un contact, donc un individu, elle devra être unique dans la table « Mes contacts ».

En revanche, comme il y aura parfois plusieurs rendez-vous pour un même contact, la clef du contact dans la table « Mes rendez-vous » sera avec doublon.

 

Conclusion :

Nous créons des cahiers qui contiendront des pages correspondant à un moule.

Chaque page contiendra des informations dont, l’une d’entre elle, sera l’identifiant de la page.

Par conséquent, ces  cahiers auront des liens entre eux grâce à ces informations qui jouent le rôle d’identifiant.

 

Avec le bon vocabulaire maintenant :

Une base de données est un ensemble de tables reliées entre elles.

Chaque table contient des enregistrements, et chaque enregistrement contient des champs.

Pour que les relations soient possibles entre les tables, certains champs d’enregistrements seront des clefs, parfois uniques dans certaines tables, et parfois avec doublons dans d’autres tables.

Lorsque vous aurez créé votre base de données, vous pourrez élaborer des requêtes SQL qui agiront sur votre base de données.

En français, une requête SQL est du genre :

Affiche-moi à l’écran, les rendez-vous de la table rendez-vous lorsque le numéro de contact est 0024.

En SQL, c’est du genre :

Select ChampMotifRendez-vous from TableRendez-vous where NumeroContact = 0024 ;

 

Bonne chance…

Mais dans le cadre de l’élaboration d’une base de données, vous devez organiser les données de façon structurée…

 

Pour en savoir davantage sur les tables et relations >>

 

 


Le dossier des bases de données de EasyPHP

 

EasyPHP stocke les bases de données dans un dossier qui s’appelle « data », en voici le chemin complet :

"C:\Program Files\EasyPHP1-8\mysql\data".

 

Un nouveau dossier sera automatiquement créé dans « data », et ce,  à chaque création d’une nouvelle base de données. Le nouveau dossier aura toujours comme nom, celui de la base de données.

 

Philippe BOULANGER