MODELE RELATIONNEL ACCESS

Fermé
ludivina40 - 26 janv. 2010 à 15:22
blux Messages postés 26491 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 25 novembre 2024 - 26 janv. 2010 à 19:07
Bonjour,
Je souhaite mettre en place un systeme de gestion de base de données relationnelles pour mon entreprise et je bloque au niveau des relations.
Pourrait-on m'expliquer le principe des intégrités référentielles?
Merci

2 réponses

Jean_Jacques Messages postés 1040 Date d'inscription mercredi 30 avril 2008 Statut Membre Dernière intervention 1 août 2014 112
26 janv. 2010 à 16:32
Bonjour ludivina40,

Voilà ce que fournit Microsoft au sujet de l'intégrité référentielle :

Qu'est-ce que l'intégrité référentielle ?
L'intégrité référentielle est un système de règles que Microsoft Access utilise pour garantir que les relations entre les enregistrements dans les tables liées sont valides et que vous n'effacez pas ou ne modifiez pas par erreur des données liées. Vous pouvez utiliser l'intégrité référentielle si toutes les conditions suivantes sont réunies :

Le champ correspondant de la table primaire est une clé primaire ou possède un index unique.


Les champs liés ont le même type de données. Il existe deux exceptions : un champ Numérotation Auto peut être lié à un champ Numérique dont la propriété TailleChamp (FieldSize) est définie sur Entier long ; et un champ Numérotation Auto dont la propriété TailleChamp (FieldSize) est définie sur ID de réplica peut être lié à un champ Numérique dont la propriété TailleChamp (FieldSize) est aussi définie sur ID de réplica.


Les deux tables appartiennent à la même base de données Microsoft Access. Si les tables sont des tables liées, elles doivent être définies au format Microsoft Access, et vous devez ouvrir la base de données dans laquelle elles se trouvent pour définir l'intégrité référentielle. L'intégrité référentielle ne s'applique pas à des tables liées provenant de bases de données utilisant d'autres formats.
Lorsque vous appliquez l'intégrité référentielle, vous devez observer les règles suivantes :

Dans le champ clé étrangère de la table liée, vous ne pouvez pas entrer une valeur qui n'existe pas dans la clé primaire de la table primaire. Toutefois, vous pouvez entrer une valeur de type Null dans la clé étrangère pour indiquer que les enregistrements ne sont pas liés. Par exemple, une commande ne peut pas être attribuée à un client qui n'existe pas, mais elle peut n'être affectée à personne en entrant une valeur de type Null dans le champ Code client.


Vous ne pouvez pas effacer un enregistrement de la table primaire si des enregistrements correspondants existent dans une table liée. Par exemple, vous ne pouvez pas effacer l'enregistrement d'un employé dans la table Employés s'il y a des commandes affectées à celui-ci dans la table Commandes.


Vous ne pouvez pas changer une valeur clé primaire dans la table primaire si cet enregistrement possède des enregistrements liés. Par exemple, vous ne pouvez pas changer le N° d'un employé dans la table Employés si des commandes lui sont affectées dans la table Commandes.
Si vous souhaitez que Microsoft Access applique ces règles pour une relation, activez la case à cocher Appliquer l'intégrité référentielle lorsque vous créez la relation. Si vous appliquez l'intégrité référentielle alors qu'une des règles ci-dessus n'est pas respectée, Microsoft Access affiche un message d'erreur et n'autorise pas la modification.

Cordialement
0