Ajouter ou modifier la clé primaire d’une table dans Access

Ajouter ou modifier la clé primaire d’une table dans Access

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

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

Supprimer une clé primaire

Modifier la clé primaire dans Access

Informations supplémentaires

Vue d’ensemble des clés primaires dans Access

Access utilise des champs de clé primaire pour associer rapidement des données issues de différentes tables et les combiner de manière significative. Vous pouvez inclure des champs de clé primaire dans d’autres tables en référence à la table qui est la source de la clé primaire. Dans ces autres tables, les champs sont appelés des clés étrangères. Par exemple, le champ Réf client de la table Clients peut également apparaître dans la table Commandes. Dans la table Clients, il s’agit de la clé primaire, tandis que dans la table Commandes, il s’agit d’une clé étrangère. Pour faire simple, une clé étrangère est la clé primaire d’une autre table. Pour plus d’informations, voir Concepts 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 Fait est susceptible de changer et de créer une charge de maintenance. Cela peut porter à confusion si la portion Fait est répétée dans un champ distinct. Par exemple, la combinaison d’une ville et d’un numéro incrémenté (par ex. NEWYORK0579) est un mauvais choix car 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. Dans l’onglet Création, accédez au groupe Outils et 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, accédez au groupe Relations et cliquez sur Relations.

      Image du ruban Access

    3. Si les tables faisant partie de la relation entre les tables ne sont pas visibles, sous l’onglet Création, accédez au groupe Relations et cliquez sur Afficher la table.

    4. Dans la boîte de dialogue Afficher la table, sélectionnez les tables à ajouter, puis cliquez sur Ajouter et surFermer.

      Groupe Relations de l’onglet Création du ruban

    5. 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.

    6. Sous l’onglet Création, accédez au groupe Relations et 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. Dans l’onglet Création, 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

Développez vos compétences dans Office
Découvrez des formations
Accédez aux nouvelles fonctionnalités en avant-première
Rejoignez le programme Office Insider

Ces informations vous ont-elles été utiles ?

Nous vous remercions pour vos commentaires.

Merci pour vos commentaires. Il serait vraisemblablement utile pour vous de contacter l’un de nos agents du support Office.

×