Sélection d'un champ d'identifiant unique
Dans ArcMap, toutes les couches nécessitent un identifiant unique. Par conséquent, votre couche de requête doit contenir un identifiant unique.
Souvent, le champ d'identifiant unique est l'attribut ObjectID, attribut dont disposent tous les objets dans une géodatabase. Toutefois, puisque les couches de requête peuvent aussi être créées à partir de données qui ne sont pas stockées dans une géodatabase, il est possible que le champ ObjectID ne soit pas toujours présent dans le groupe de champs d'une couche de requête. Pour cette raison, il est nécessaire de spécifier le champ ou le groupe de champs à utiliser pour générer un identifiant unique dans ArcGIS.
Par défaut, lors de la validation, ArcGIS définit le premier champ non nul trouvé dans le jeu de résultats comme champ d'identifiant unique. Il s'agit souvent d'une valeur adéquate à utiliser comme champ d'identifiant unique, mais cette propriété peut être modifiée en sélectionnant d'autres champs dans la liste Champs d'identifiant unique.
Seuls certains types de champ peuvent être utilisés en tant qu'identifiant unique. Ces types de champ incluent le nombre entier, la chaîne, le GUID et la date. Si un seul champ de nombre entier est spécifié, ArcGIS utilise les valeurs contenues dans ce champ pour identifier de façon unique toutes les entités et toutes les lignes renvoyées à partir d'une couche de requête. Toutefois, si un seul champ ou groupe de champs de type chaîne est utilisé comme identifiant unique, ArcGIS doit apparier ces valeurs uniques à un nombre entier. Cette opération s'effectue dans ArcGIS à chaque fois que le système a besoin d'un attribut ObjectID ; par exemple, lors de la création d'une sélection de carte ou de l'ouverture de la table attributaire.
Puisque la valeur contenue dans le champ d'identifiant unique identifie de manière unique un objet de ligne ou d'entité dans ArcGIS, les valeurs spécifiées dans ce champ doivent toujours être uniques et ne doivent pas être nulles. Il est de votre responsabilité de garantir que les valeurs contenues dans ce champ respectent ce critère. ArcGIS n'impose pas l'unicité des valeurs dans le champ d'identifiant unique d'une couche de requête. Certains éléments d'ArcGIS se comporteront de façon imprévisible si des valeurs qui ne sont pas uniques ont été spécifiées.
Vous pouvez sélectionner et désélectionner des champs dans la liste des identifiants uniques. Si plusieurs champs sont sélectionnés, les valeurs contenues dans ces champs seront utilisées en tant que clé de génération d'une valeur entière unique. Le champ qui en résulte se nomme toujours ESRI_OID, à moins qu'un champ du même nom existe déjà.
ArcGIS n'oblige pas à spécifier uniquement des valeurs qui ne sont pas nulles dans le champ d'identifiant unique. Une erreur s'affiche si ArcGIS détecte une valeur nulle. C'est au créateur de la couche de requête de s'assurer que toutes les valeurs utilisées pour l'identifiant unique ne sont pas nulles. Vous pouvez valider le jeu de résultats d'une couche de requête afin de vérifier que toutes les valeurs utilisées pour l'identifiant unique ne sont pas nulles.
ArcGIS n'applique pas l'unicité des valeurs dans le champ d'identifiant unique. Si ArcGIS détecte une valeur qui n'est pas unique, aucune erreur n'est renvoyée. Cependant, vous êtes susceptible d'obtenir des résultats incohérents dans les ensembles de sélection ou d'autres requêtes dans ArcGIS.