Microsoft Access Ne peut pas créer cette relation et appliquer l’intégrité référentielle

Votre Microsoft Office Access affiche-t-il fréquemment l’erreur «Impossible de créer cette relation et d’appliquer l’intégrité référentielle»? Vous devez vous demander pourquoi cette erreur est fréquente sur votre écran. Pour en savoir plus sur ce problème spécifique «intégrité référentielle dans Access», il suffit de consulter l’intégralité de l’article.

Ce blog contient également des informations détaillées sur l’intégrité référentielle, le but de l’application de l’intégrité référentielle, Comment transformer l’intégrité référentielle Allumé ou éteint, les correctifs à résoudre ne peuvent pas créer cette erreur de relation et plus.

Scénario pratique:

Je pose cette question à l’un de nos utilisateurs. Je ne suis pas vraiment au courant de l’accès. C’est Access 2010 (32bit) sur Windows 7 pro.

«Le problème est que nous avons besoin que le champ« clientnickname »(c’est le nom que nous avons donné au champ) dans la table des clients soit associé au champ« clientnickname »dans la table des matières, avec une relation un à plusieurs, appliquer l’intégrité référentielle, avec suppression en cascade et mise à jour en cascade. J’ai fait tout ce que je pouvais pour m’assurer qu’il n’y avait pas d’enregistrements dans la table des matières qui ne se rapportent pas à la clé primaire dans la table des clients, mais elle refuse d’appliquer l’intégrité référentielle. Cette relation a toujours existé dans cette base de données jusqu’à récemment, nous avions remarqué qu’elle avait été supprimée. En essayant de recréer la relation, c’est le problème que j’ai eu.

Détails de l’erreur:

Nom: Microsoft Office Access ne peut pas créer cette relation et appliquer l’intégrité référentielle.

Description: Microsoft Office Access ne peut pas créer cette relation et appliquer l’intégrité référentielle. @ Les données de la table ‘|’ enfreignent les règles d’intégrité référentielle.Par exemple, il peut y avoir des enregistrements concernant un employé dans la table associée, mais aucun enregistrement pour empl

Qu’est-ce que la relation dans la base de données Access?

Relation dans la base de données Access vous aide à combiner les données de deux tables différentes. Dans une base de données de bureau d’accès, vous pouvez facilement créer une relation dans des fenêtres relationnelles.

Comment créer une relation dans la base de données Access?

  • Accédez à l’onglet Outil de base de données, dans le groupe de relations, appuyez sur les relations.

créer une relation dans la base de données Access

  • Si les relations ne sont pas définies, la boîte de dialogue Afficher la table apparaît automatiquement à l’écran. Mais s’il n’apparaît pas, accédez à l’onglet Conception> Groupe de relations> cliquez sur Afficher le tableau.
  • Cliquez sur la boîte de dialogue Afficher la table pour afficher toutes les tables et requêtes de la base de données. Pour ne voir que les tables, sélectionnez l’option Tables.
  • Ensuite, sélectionnez une ou plusieurs tables, puis cliquez sur l’option Ajouter. Pour finir d’ajouter des tables au processus, appuyez sur l’option Fermer.
  • Faites glisser un champ principalement le champ de clé primaire d’une table vers un champ commun (clé étrangère) dans l’autre champ. Pour faire glisser plusieurs champs, vous devez appuyer sur la touche Ctrl. Ensuite, appuyez sur chaque champ, puis faites-les glisser.
  • Cela ouvrira la boîte de dialogue Modifier les relations.

  • Vérifie que les noms de champs affichés sont présents dans les champs communs pour la relation. Si le nom du champ est incorrect, cliquez sur le nom du champ et sélectionnez les champs correspondant le mieux à la liste.
  • Pour appliquer l’intégrité référentielle à cette relation, vous devez cocher la case Appliquer l’intégrité référentielle.
  • À la fin, appuyez sur l’option Créer.
  • Après avoir terminé tout cela dans la fenêtre Relations, appuyez sur l’option Enregistrer uniquement pour enregistrer les modifications apportées à la présentation de votre relation.

PRENDRE UN REGARD:

[Mise à jour] Correctifs pour résoudre Access “Impossible de supprimer à partir des tables spécifiées (erreur 3086)”

Comment créer une relation dans la base de données Access?

  • Accédez à l’onglet Outil de base de données, dans le groupe de relations, appuyez sur les relations.
  • Si les relations ne sont pas définies, la boîte de dialogue Afficher la table apparaît automatiquement à l’écran. Mais s’il n’apparaît pas, accédez à l’onglet Conception> Groupe de relations> cliquez sur Afficher le tableau.
  • Cliquez sur la boîte de dialogue Afficher la table pour afficher toutes les tables et requêtes de la base de données. Pour ne voir que les tables, sélectionnez l’option Tables.
  • Ensuite, sélectionnez une ou plusieurs tables, puis cliquez sur l’option Ajouter. Pour finir d’ajouter des tables au processus, appuyez sur l’option Fermer.
  • Faites glisser un champ principalement le champ de clé primaire d’une table vers un champ commun (clé étrangère) dans l’autre champ. Pour faire glisser plusieurs champs, vous devez appuyer sur la touche Ctrl. Ensuite, appuyez sur chaque champ, puis faites-les glisser.
  • Cela ouvrira la boîte de dialogue Modifier les relations.
  • Vérifie que les noms de champs affichés sont présents dans les champs communs pour la relation. Si le nom du champ est incorrect, cliquez sur le nom du champ et sélectionnez les champs correspondant le mieux à la liste.
  • Pour appliquer l’intégrité référentielle à cette relation, vous devez cocher la case Appliquer l’intégrité référentielle.
  • À la fin, appuyez sur l’option Créer.
  • Après avoir terminé tout cela dans la fenêtre Relations, appuyez sur l’option Enregistrer uniquement pour enregistrer les modifications apportées à la présentation de votre relation.

Que signifie intégrité référentielle (RI)?

signifie intégrité référentielle (RI)

L’intégrité référentielle est un concept de base de données relationnelle, qui stipule que la relation de table doit toujours être cohérente. Autrement, cela signifie également que tous les champs de clé étrangère doivent correspondre à la clé primaire à laquelle fait référence la clé étrangère.

Ainsi, toutes les modifications apportées à la clé primaire doivent être appliquées à toutes les clés étrangères. De même, la même restriction s’applique aux clés étrangères en ce que toute mise à jour doit être transmise à la clé parent primaire.

Exemple d’intégrité référentielle:

Prenons une base de données bancaire contenant les deux tables:

 Table ACCOUNTS_MASTER: cette table contient les données de base d’un compte bancaire, telles que son type, son titulaire, sa date de création et ses limites de retrait.

 Table CUSTOMER_MASTER: Elle contient les données du client / titulaire du compte, telles que son numéro de sécurité sociale, son nom, son adresse et sa date de naissance.

Pour l’identification unique de chaque client / titulaire de compte dans la table CUSTOMER_MASTER, une colonne de clé primaire nommée CUSTOMER_ID est créée.

Pour identifier la relation client / compte bancaire dans la table ACCOUNTS_MASTER, un client déjà existant dans la table CUSTOMER_MASTER doit être référencé. Ainsi, la colonne CUSTOMER_ID – également créée dans la table ACCOUNTS_MASTER – est une clé étrangère.

Eh bien, cette colonne est spéciale car ses valeurs ne sont pas nouvellement créées. Ces valeurs doivent plutôt référencer des valeurs identiques et existantes dans la colonne de clé primaire d’une autre table, qui est la colonne CUSTOMER_ID de la table CUSTOMER_MASTER.

L’intégrité référentielle est une norme, ce qui signifie que toute valeur CUSTOMER_ID de la table CUSTOMER_MASTER ne peut pas être modifiée sans modifier la valeur correspondante de la table ACCOUNTS_MASTER.

Quel est l’objectif de l’application de l’intégrité référentielle?

Appliquer l’intégrité référentielle dans Access 2013/2016

L’intégrité référentielle a pour objectif principal d’empêcher les enregistrements orphelins et de maintenir les références parfaitement synchronisées. Ainsi, il n’y a pas d’enregistrement dans votre base de données d’accès qui référence d’autres enregistrements qui n’existent plus.

L’utilisateur peut appliquer l’intégrité de la règle de sécurité en l’activant pour la relation entre les tables. Une fois qu’il est appliqué, l’accès rejette toutes les opérations qui violent l’intégrité référentielle pour cette relation de table. Access rejette également les mises à jour modifiant la cible des références, ainsi que les suppressions supprimant la cible des références.

Pour avoir accès, propage des mises à jour et des suppressions référentielles. Pour que toutes les lignes associées soient modifiées en conséquence, consultez la section Définissant les options de cascade.

Condition sous laquelle l’intégrité référentielle fonctionne:

L’intégrité référentielle ne fonctionne que lorsque la condition suivante est remplie:

  •  L’un des champs liés de la base de données Access est une clé primaire.
  •  Les champs associés doivent avoir le même type de données et la même taille.
  •  Les deux tables sont dans la même base de données Access.
  •  Les mêmes enregistrements de la table liée ne sont pas autorisés sauf si un enregistrement correspondant est déjà présent dans la table primaire.
  •  Lors de l’établissement de l’intégrité référentielle, les utilisateurs sont confrontés à un problème courant: les données orphelines dans une table liée.

Comment activer ou désactiver l’intégrité référentielle?

  1. Ouvrez la fenêtre de relation et tapez sur la ligne de relation de la relation que vous souhaitez modifier. La ligne de relation sélectionnée apparaîtra plus épaisse après la sélection.
  2. Effectuez maintenant un double tapotement sur la ligne de relation sélectionnée. Cela ouvrira la boîte de dialogue Modifier les relations.
  3. Sélectionnez la case à cocher Appliquer l’intégrité référentielle.
  4. Apportez des modifications supplémentaires à la relation si nécessaire.
  5. puis cliquez sur ok.

AUSSI LIRE

Comment convertir / exporter / importer une base de données Access au format CSV

Règles définies après avoir établi l’intégrité référentielle

Après avoir établi l’intégrité référentielle, les règles suivantes sont définies.

  • Vous ne pouvez pas ajouter d’enregistrement à la table associée tant qu’un enregistrement correspondant n’existait déjà dans la table primaire.
  •  Impossible de modifier la valeur de la clé primaire dans la table primaire si le même enregistrement existe dans la table associée.
  • Impossible de supprimer un enregistrement d’une table primaire s’il existe des enregistrements correspondants dans une table liée.

Comment réparer MS Access “Impossible de créer des relations pour appliquer l’intégrité référentielle”?

MS Access “Impossible de créer des relations pour appliquer l'intégrité référentielle

Afin de corriger l’accès «Impossible de créer des relations pour appliquer l’intégrité référentielle. Les données existantes dans la table enfreignent les règles d’intégrité référentielle dans la table. ”

Vous essayez de créer une relation à l’aide de la clause CONSTRAINT de l’instruction ALTER TABLE, mais les données existantes dans les deux tables violent les contraintes d’intégrité référentielle.

Par exemple: il doit exister un enregistrement relatif à l’employé dans la table liée mais aucun enregistrement correspondant à l’employé dans la table primaire.

Pour établir une relation, vous devez modifier les données afin que des enregistrements principaux existent pour tous les enregistrements pertinents.



Comment réparer Microsoft Access «Ne peut pas créer cette relation et appliquer l’intégrité référentielle» dans Access 2013/2016?