Utilisation de tables liées > Préparation d'une base de données relationnelle
 

Préparation d'une base de données relationnelle

Avant de créer une base de données relationnelle avec le graphe de liens, tracez votre base de données sur papier ou à l'écran. Dans le vocabulaire des bases de données, le plan que vous développez est appelé diagramme des liens d'entités.

Pour savoir comment concevoir une solution FileMaker Pro Advanced dans les grandes lignes, consultez la section Création d'une app personnalisée.

Pour préparer une base de données relationnelle :

1. Déterminez les catégories d'informations dont votre base de données relationnelle a besoin. Ces catégories correspondront aux tables dans FileMaker Pro Advanced.

Par exemple, une solution Ventes peut utiliser les tables suivantes : Clients (qui stocke les données des clients), Factures (qui stocke les données de commande) et Produits (qui stocke les données sur les produits).

Tables Clients, Facturation et Produits

2. Déterminez la façon dont les tables sont liées entre elles. Pour cela, écrivez des phrases simples décrivant la façon dont les catégories vont interagir l'une avec l'autre, par exemple « produits des commandes clients » et « suivi de facturation des commandes clients ».

3. Connectez une table à l'autre pour indiquer un lien entre elles. Par exemple, les clients peuvent avoir des factures et les factures des produits.

Si une table n'a aucun lien avec une autre table, c'est qu'elle ne sert probablement à rien. Dans cet exemple, une table Employés n'a aucun sens dans cette base de données relationnelle.

Trois tables présentant les liens les unes aux autres avec table Employés ignorée

4. Indiquez le type de lien entre les tables en les connectant au moyen d'un symbole représentatif.

Dans un lien un à un, un enregistrement de Table A correspond à un enregistrement de Table B.

Dans un lien un à plusieurs, un enregistrement de Table A correspond à plusieurs enregistrements de Table B.

Dans un lien plusieurs à plusieurs, plusieurs enregistrements de Table A correspondent à plusieurs enregistrements de Table B.

Consultez la section A propos des liens.

Trois tables représentant les liens entre elles

Parmi les enseignements de cet exemple :

Un client peut avoir plusieurs factures.

Un produit peut apparaître dans plusieurs factures.

Une facture peut contenir plusieurs produits

5. Notez qu'il existe un lien plusieurs à plusieurs entre Factures et Produits. Vous ne pouvez pas configurer de lien plusieurs à plusieurs directement entre deux tables.

Les bases de données relationnelles gèrent les liens un à un et un à plusieurs directement. Vous devez résoudre le lien plusieurs à plusieurs au moyen d'une table intermédiaire. Celle-ci divise le lien plusieurs à plusieurs en deux liens un à plusieurs. Pour résoudre le problème dans l'exemple fourni, ajoutez la table intermédiaire Articles pour stocker des informations sur les produits vendus.

Liens ajustés avec la table Articles servant de table de lien

Une fois le lien plusieurs à plusieurs résolu, cet exemple offre les enseignements suivants :

Un client peut avoir plusieurs factures.

Une facture peut contenir plusieurs articles.

Un produit peut apparaître dans plusieurs articles.

6. Déterminez les rubriques dont chaque table a besoin.

Chaque table n'a qu'un seul objet et toutes les rubriques d'une table décrivent uniquement cet objet. Par exemple, les rubriques d'un enregistrement de la table Clients stockent la totalité des informations concernant un client.

Pour cette même raison, nous vous conseillons d'attribuer un numéro d'identification unique à chaque client. Dans votre base de données, il s'agit d'une clé primaire. Il est inutile de saisir un numéro d'identification client dans la table sauf si vous ajoutez un nouveau client. L'existence d'un numéro de client détermine donc l'existence d'un enregistrement. Une table Clients peut également contenir des rubriques relatives au nom du client, à son adresse et à son numéro de téléphone.

Une table Produits peut contenir des rubriques, telles qu'un numéro d'identification du produit, le prix à l'unité de chaque produit et la quantité en stock. Une table Articles peut contenir des rubriques, telles que les numéros d'identification des produits et des factures, le nom, le prix à l'unité, la quantité et le prix total de chaque produit vendu. Une table Factures peut contenir des rubriques, telles qu'un numéro d'identification des factures, la date de commande et le vendeur.

Rubriques de chaque table

7. Déterminez la rubrique de clé primaire (ou les rubriques pour un lien à plusieurs critères) pour chaque table, puis indiquez-les dans votre plan. Indiquez ensuite la ou les rubriques de clé étrangère dans chaque table.

Dans cet exemple :

Les clés primaires sont Clients::N° client, Factures::N° facture, Produits::N° produit et Articles::N° article.

Les clés secondaires sont Factures::N° client et Articles::N° produit.

Pour afficher les données Clients dans la table Factures, les deux tables doivent avoir une rubrique en commun afin de créer un lien. N° client est cette rubrique. Dans la table Clients, il s'agit de la clé primaire. Dans la table Factures, il s'agit de la clé étrangère.

Dans la table Articles, N° produit est la rubrique que les tables Articles et Produits ont en commun. Dans la table N° produit, cette rubrique est la clé primaire. Dans la table Factures, cette rubrique est la clé étrangère.

Ces rubriques clés sont un type de rubrique source. Consultez la section A propos des liens.

Rubriques clés encerclées dans chaque table

8. Pour chacune des tables, choisissez les rubriques qui contiendront les données et définissez les rubriques qui seront utilisées à partir d'autres tables (liées).

L'objet d'une table permet de déterminer l'emplacement logique de stockage et d'utilisation des données d'une table liée. Outre les rubriques clés, les rubriques ne doivent apparaître qu'une fois dans votre base de données. Retirez les occurrences de rubrique n'appartenant pas à l'objet de la table.

Rubriques inutiles rayées des tables

9. Connectez chaque clé primaire à la clé étrangère qui lui correspond dans la table liée.

Le lien entre les tables s'explique par le fait que leurs rubriques clés contiennent des données qui correspondent aux critères du lien.

Liens entre les rubriques clés des tables

Ce plan indique à présent plusieurs choses :

Un client peut avoir plusieurs factures différentes, mais une facture ne peut être associée qu'à un seul client.

Une facture peut contenir plusieurs articles, mais une seule ligne pour chaque article apparaît sur une facture.

Un produit peut apparaître dans plusieurs articles différents, mais à une ligne d'article correspond uniquement un produit.

Rubriques connexes 

A propos des liens

Utilisation du graphe de liens

Création et modification de rubriques