Définir des clés secondaires pour référencer des lignes

Les clés secondaires fournissent un moyen efficace et précis d’intégrer des données avec des systèmes externes. Il est essentiel dans les cas où un système externe ne stocke pas les ID de l’identificateur global unique (GUID) qui identifient les lignes dans Microsoft Dataverse.

Un système d’intégration de données utilise des clés secondaires pour identifier des lignes à l’aide d’une ou de plusieurs valeurs de colonnes de table qui représentent une combinaison unique. Chaque clé secondaire porte un nom unique.

Par exemple, pour identifier une ligne de compte avec une clé secondaire, vous pouvez utiliser le numéro de compte ou la colonne du numéro de compte en combinaison avec quelques autres colonnes qui contiennent des valeurs qui ne doivent pas changer.

Notes

Bien que vous puissiez définir des clés secondaires avec Power Apps, vous ne pouvez pas les utiliser par programme dans le code. Pour en savoir plus sur l’utilisation des clés secondaires par programme, voir :

Voici quelques avantages de la fonction de clé secondaire :

  • Recherche plus rapide des lignes.
  • Opérations de traitement des données en bloc plus fiables.
  • Programmation simplifiée des données importées à partir des systèmes externes sans ID de ligne.

Création d’une clé secondaire

Deux concepteurs nécessaires permettent de créer des clés secondaires :

Concepteur Description
Portail Power Apps Fournit une expérience transparente facile, mais certaines options ne sont pas disponibles.
Pour plus d’informations, voir : Définir des clés secondaires à l’aide du portail Power Apps
Explorateur de solutions Pas aussi facile, mais fournit davantage de flexibilité pour des besoins moins courants.
Plus d’informations : Définir des clés secondaires à l’aide de l’explorateur de solutions

Notes

Vous pouvez également créer une clé secondaire dans votre environnement comme suit :

Les informations de cet article vous permettent de choisir le concepteur à utiliser.

Vous devez utiliser le portail Power Apps pour créer des clés secondaires sauf si vous devez traiter l’une des exigences suivantes :

  • Créer une clé secondaire dans une solution autre que la Solution par défaut Common Data Service.
  • Vous souhaitez suivre facilement la tâche système créée pour le suivi de la progression de la création des index de prise en charge.

Limites de la création de clés secondaires

Il existe des contraintes à la création de clé secondaire.

Champs qui peuvent être utilisés pour les clés secondaires

Seuls ces types de colonnes peuvent être utilisés pour créer des clés secondaires :

  • Décimale
  • Nombre entier
  • Une seule ligne de texte (Chaîne)
  • Date et heure
  • Lookup
  • Option

Notes

  • Les colonnes dont la propriété Activer la sécurité des colonnes est activée ne peuvent pas être utilisées comme clé secondaire. Pour plus d’informations : Tables de sécurité des champs
  • Lorsque des valeurs NULL sont utilisées dans les colonnes de clé secondaire, l’unicité ne sera pas appliquée. Pour éviter les enregistrements en double, n’utilisez pas de valeurs nulles dans les colonnes définies dans la contrainte unique de clé secondaire.

Nombre de clés

Vous pouvez définir jusqu’à dix clés différentes pour une table.

Taille de clé valide

Lorsqu’une clé est créée, le système valide que la clé peut être prise en charge par la plateforme, notamment le fait que la taille totale de la clé n’enfreint pas les contraintes des index SQL, à savoir 900 octets par clé et 16 colonnes par clé. Si la taille de la clé ne remplit pas les contraintes, un message d’erreur s’affiche.

Caractères Unicode en valeur principale

Si les données d’une colonnes utilisée dans une autre clé contiennent l’un des caractères suivants <,>,*,%,&,:,/,\\,# alors les actions de mise à jour ou upsert (PATCH) ne fonctionneront pas.

Si vous n’avez besoin que d’unicité, cette approche fonctionnera, mais si vous devez utiliser ces clés dans le cadre de l’intégration de données, il est préférable de créer la clé pour les colonnes qui n’auront pas de données avec ces caractères.

Suivez le statut de la création de la clé secondaire

Lorsqu’une clé secondaire est créée elle lance une tâche système pour créer des index dans les tables de la base de données pour appliquer des contraintes uniques sur les colonnes utilisés pour la clé secondaire. La clé secondaire ne prendra pas effet tant que ces index ne seront pas créés. La création de ces index peut prendre un certain temps en fonction de la quantité de données dans le système.

Le statut de la tâche système détermine l’état de la clé secondaire. La clé secondaire peut avoir les états suivants :

  • En attente
  • En cours
  • Active
  • Échec

Lorsque la tâche système est terminée, le statut de la clé secondaire est Active et elle est disponible en vue de son utilisation.

Si la tâche système échoue, recherchez la tâche système pour afficher toutes les erreurs. La tâche système peut vous indiquer un nom qui suit ce critère : Create index for {0} for table {1}0 représente le Nom complet de la clé secondaire et 1 est le nom de la table.

Notes

Si vous voulez surveiller le statut de la tâche système vous devez utiliser l’explorateur de solutions pour créer l’index. Il doit contenir un lien vers la tâche système afin de pouvoir la surveiller. Informations complémentaires : (Facultatif) Afficher la création du suivi de tâche système des index

Voir aussi

Définir des clés secondaires à l’aide du portail Power Apps
Définir les clés secondaires à l’aide de l’Explorateur de solutions
Documentation pour développeurs : Définir des clés secondaires pour une table
Documentation pour développeurs : Utilisation d’une clé secondaire pour créer une ligne

Notes

Pouvez-vous nous indiquer vos préférences de langue pour la documentation ? Répondez à un court questionnaire. (veuillez noter que ce questionnaire est en anglais)

Le questionnaire vous prendra environ sept minutes. Aucune donnée personnelle n’est collectée (déclaration de confidentialité).