|
Pages 1 | 2
Choisir
ses types de données, créer sa table, rajouter
ou effacer des enregistrements, extraire
des tuples d'une table, tout cela, nous l'avons précédemment
évoqué.
Jusqu'à maintenant, nos "SELECT" se limitaient
à ramener les tuples d'un seule table, ce qui, vous vous
en doutez, est loin d'exploiter l'adjectif "relationnelles"
que l'on attribue aux bases de données que nous étudions.
L'objectif de ce tutoriel est de découvrir quelques-uns des
moyens mis à notre disposition pour récupérer
et croiser des informations à partir de tables différentes.
Suivre les bonnes clefs, comme des liens
hypertexte.
Un titre peut-être un peu énigmatique, mais qui résume
bien le procédé à suivre en cas de jointures.
Il va s'agir de repérer (surtout si vous n'êtes pas
le concepteur du schéma de la base) les éléments
communs entre plusieurs tables afin d'établir les croisements
opportuns.
Voici les tables sur lesquelles nous allons nous appuyer aujourd'hui.
Il s'agit de formations, et d'experts, ce sont les intervenants
:
(Table formations)
|
id_formation
|
nom_formation
|
id_expert
|
|
1
|
C#
|
2
|
|
2
|
Cold Fusion
|
3
|
|
3
|
Web Services
|
5
|
|
4
|
Php
|
6
|
|
5
|
ADO.NET
|
5
|
|
6
|
XML
|
|
(Table experts)
|
id_expert
|
nom_expert
|
|
1
|
James
|
|
2
|
Lars
|
|
3
|
Kirk
|
|
4
|
Jason
|
|
5
|
Peter
|
|
6
|
Jessie
|
Nous avons donc deux tables, "formations" et "experts"
qui ont respectivement comme clefs primaires "id_formation"
et "id_expert". Comme nous le disions plus haut, ces clefs
primaires identifient de manière unique ces formations et
ces experts : deux experts peuvent porter le même prénom,
mais certainement pas le même identifiant.
A partir de là, comment faire communiquer ces deux tables
?
On peut en effet avoir besoin par exemple de discerner quelles formations
correspondent à quels experts où encore parmi les
experts disponibles, quels sont ceux qui ne sont pas attribués
à une formation...
Ici, le point commun entre ces deux tables est évident,
il s'agit de l'identifiant de l'expert. Ce champ est en effet à
la fois clef primaire de la table "experts" et
clef étrangère de la table "formation".
Ce champ va nous permettre d'établir une liaison entre ces
deux tables. Voyons comment procéder.
Note : les requêtes suivantes se basent sur MySQL 3.23.40.
Nous vous rappelons que pour installer une configuration de test
de manière simple (Php4, MySQL et PhpMyAdmin), vous pouvez
télécharger "Easyphp".
Pages 1 | 2
|