Ajouter ou modifier la clé primaire d’une table dans Access
Applies ToAccess pour Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Une clé primaire est un champ ou un ensemble de champs de table qui contient des valeurs uniques. Les valeurs de la clé peuvent être utilisées pour faire référence à des enregistrements entiers, car chaque enregistrement dispose d’une valeur différente pour la clé. Chaque table ne peut comprendre qu’une seule clé primaire. Access peut automatiquement créer un champ de clé primaire pour vous lorsque vous créez une table, ou vous pouvez spécifier les champs que vous souhaitez utiliser comme clé primaire. Cet article explique comment et pourquoi utiliser des clés primaires.

Pour définir la clé primaire d’une table, ouvrez la table en mode Création. Sélectionnez le ou les champs à utiliser, puis sur le ruban, cliquez sur Clé primaire.

Remarque : Cet article concerne uniquement les bases de données Access de bureau. Access gère automatiquement les clés primaires des nouvelles tables dans les applications Access Web App et les bases de données web. Bien qu’il soit possible de remplacer ces clés primaires automatisées, il est déconseillé de le faire.

Contenu de cet article

Vue d’ensemble des clés primaires dans Access

Access utilise les champs de clé primaire pour associer rapidement les données de plusieurs tables et les combiner de manière significative. Vous pouvez inclure les champs de la clé primaire dans d'autres tables pour faire référence à la table qui est la source de la clé primaire. Dans ces autres tables, les champs sont appelés clés étrangères. Par exemple, un champ ID client de la table Clients peut également s'afficher dans la table Commandes. Dans la table Clients, il s’agit de la clé primaire. Dans la table Commandes, il s’agit d’une clé étrangère. Une clé étrangère, en termes simples, est la clé primaire d'une autre table. Si vous voulez en savoir plus, consultez Informations de base sur la conception d’une base de données.

Clé primaire et clé étrangère affichées entre deux feuilles de données Access

1. Clé primaire

2. Clé étrangère :

Si vous déplacez des données existantes dans une base de données, il est possible que vous ayez déjà un champ qui peut être utilisé comme clé primaire. Souvent, un numéro d’identification unique, comme une référence, un numéro de série ou un code, fait office de clé primaire dans une table. Par exemple, vous pouvez créer une table Clients où chaque client est associé à une référence client unique. Dans ce cas, le champ Réf client constitue la clé primaire.

Access crée automatiquement un index pour la clé primaire pour accélérer les requêtes et les autres opérations. En outre, il veille à ce que chaque enregistrement soit associé à une valeur dans le champ de clé primaire et à ce qu’il soit toujours unique.

Lorsque vous créez une table en mode Feuille de données, Access crée automatiquement une clé primaire pour vous en lui attribuant le nom de champ « ID » et le type de données NuméroAuto.

Qu’est-ce qu’une clé primaire appropriée ?

Une clé primaire appropriée doit présenter plusieurs caractéristiques :

  • elle identifie chaque ligne de façon unique ;.

  • elle n’est jamais vide ou Null (en d’autres termes, elle doit toujours contenir une valeur) ;

  • ses valeurs ne changent que rarement (de préférence, jamais).

Si vous ne parvenez pas à identifier une clé appropriée, créez un champ NuméroAuto à utiliser comme clé. Un champ NuméroAuto se génère automatiquement une valeur à la première sauvegarde de chaque enregistrement. Par conséquent, un champ NuméroAuto répond aux trois caractéristiques d’une clé primaire appropriée. Pour plus d’informations sur l’ajout d’un champ NuméroAuto, voir l’article Ajout d’un champ NuméroAuto comme clé primaire.

Clé primaire NuméroAuto intitulée ID en mode Création de table d’Access

Un champ NuméroAuto constitue une clé primaire appropriée.

Exemples de mauvaises clés primaires

Tout champ auquel il manque l’une des caractéristiques d’une clé primaire appropriée est un mauvais choix. Voici quelques exemples de champs qui feraient des clés primaires non appropriées pour une table Contacts avec la raison pour laquelle elles le sont.

Clé primaire non appropriée

Raison

Nom

N’est pas forcément unique et peut changer.

Numéro de téléphone

Susceptible de changer.

Adresse e-mail

Susceptible de changer.

Code postal

Peut être partagé par plusieurs personnes.

Combinaisons de faits et de numéros

La partie factuelle peut changer, ce qui crée une charge de maintenance. Cela pourrait prêter à confusion si la partie factuelle est répétée en tant que champ distinct. Par exemple, combiner la ville et un nombre incrémenté (par exemple, NEWYORK0579) serait un mauvais choix si la ville est également stockée en tant que champ.

Numéros de sécurité sociale

  • Information confidentielle non autorisée dans les services gouvernementaux et dans certaines organisations.

  • Certaines personnes n’ont pas de numéro de Sécurité Sociale (non applicable pour la France)

  • Une personne peut en avoir plusieurs dans sa vie (non applicable pour la France)

Clés composites : utilisation de plusieurs champs combinés comme clé primaire

Dans certains cas, il peut être nécessaire d’utiliser deux ou plusieurs champs d’une table comme clé primaire. Par exemple, une table Détails de la commande qui stocke les articles des commandes peut utiliser deux champs dans sa clé primaire : Réf commande et Réf produit. Une clé composée de plusieurs champs est appelée une clé composite.

Définir la clé primaire à l’aide de champs déjà existants dans Access

Pour qu’une clé primaire puisse fonctionner correctement, le champ doit identifier chaque ligne de manière unique, ne peut jamais être vide ou contenir la valeur Null et ne doit changer que rarement (de préférence, jamais). Pour définir une clé primaire :

  1. Ouvrez la base de données à modifier.

  2. Dans le volet de navigation, cliquez avec le bouton droit sur la table dans laquelle vous souhaitez supprimer la clé primaire, puis cliquez sur Mode Création dans le menu contextuel.

    Conseil : Si le volet de navigation n’est pas affiché, appuyez sur F11 pour l’afficher.

  3. Sélectionnez le ou les champs à utiliser comme clé primaire.

    Pour sélectionner un champ, cliquez sur le sélecteur de ligne correspondant.

    Pour sélectionner plusieurs champs afin de créer une clé composite, appuyez sur la touche Ctrl tout en cliquant sur le sélecteur de ligne de chaque champ.

  4. Sous l’onglet Création de table , dans le groupe Outils , cliquez sur Clé primaire.

    Groupe Outils sous l’onglet Création

    Un indicateur de clé s’affiche à gauche du champ ou des champs spécifiés comme clé primaire.

Supprimer une clé primaire dans Access

Lors de la suppression de la clé primaire, les champs faisant office de clé primaire ne constituent plus le mode d’identification primaire d’un enregistrement.

La suppression de la clé primaire n’entraîne pas celle des champs de la table, mais celle de l’index créé pour cette clé primaire.

  1. Avant de supprimer une clé primaire, vous devez vous assurer qu’elle ne fait pas partie d’une relation entre des tables. En effet, si vous tentez de supprimer une clé primaire qui fait partie d’une ou de plusieurs relations, Access signale que vous devez d’abord supprimer la relation.Pour supprimer une relation entre des tables, procédez comme suit :   

    1. Si les tables faisant partie de la relation entre les tables sont ouvertes, fermez-les. Il est en effet impossible de supprimer une relation entre des tables ouvertes.

    2. Sous l’onglet Outils de base de données, dans le groupe Relations, cliquez sur Relations.

      Image du ruban Access

    3. Sélectionnez Ajouter des tables.

    4. Cliquez sur la ligne correspondant à la relation entre les tables à supprimer (la ligne s’affiche en gras lorsqu’elle est sélectionnée), puis appuyez sur la touche Suppr.

    5. Sous l’onglet Création de relations , dans le groupe Relations , cliquez sur Fermer.

  2. Après avoir supprimé les relations, dans le volet de navigation, cliquez avec le bouton droit sur la table à partir de laquelle vous souhaitez supprimer la clé primaire, puis cliquez sur Mode Création.

    Conseil : Si le volet de navigation n’est pas affiché, appuyez sur F11 pour l’afficher.

  3. Cliquez sur le sélecteur de ligne correspondant à la clé primaire active.

    Si la clé primaire ne comporte qu’un seul champ, cliquez sur le sélecteur de ligne correspondant.

    Si la clé primaire est constituée de plusieurs champs, cliquez sur le sélecteur de ligne correspondant à chaque champ de la clé primaire.

  4. Sous l’onglet Création de table , dans le groupe Outils , cliquez sur Clé primaire.

    L’indicateur de clé est alors supprimé des champs spécifiés comme clé primaire.

Remarque : Lorsque vous enregistrez une nouvelle table sans définir de clé primaire, Access vous demande d’en créer une. Si vous cliquez sur Oui, un champ ID associé au type de données NuméroAuto est créé pour fournir une valeur unique pour chaque enregistrement. Si la table contient déjà un champ NuméroAuto, Access l’utilise comme clé primaire.

Modifier la clé primaire dans Access

Pour modifier la clé primaire d’une table, procédez comme suit :

  1. Supprimez la clé primaire existante en suivant les instructions fournies dans la section Supprimer la clé primaire.

  2. Définissez la clé primaire en suivant les instructions fournies dans la section Définir la clé primaire.

Informations supplémentaires

Pour plus d’informations sur la conception d’une base de données et le choix d’une clé primaire appropriée, voir les articles :

Haut de page

Besoin d’aide ?

Vous voulez plus d’options ?

Explorez les avantages de l’abonnement, parcourez les cours de formation, découvrez comment sécuriser votre appareil, etc.

Les communautés vous permettent de poser des questions et d'y répondre, de donner vos commentaires et de bénéficier de l'avis d'experts aux connaissances approfondies.