Définition d'un identifiant d'objet (IdObjet)
La colonne objectID affiche des nombres entiers, uniques et de valeur non nulle pour identifier de façon unique les lignes des tables dans une géodatabase. La colonne ObjectID peut contenir des valeurs 32 bits qui stockent une valeur maximale de 2 147 483,648.
Les tables créées avec ArcGIS, ou créées en dehors d'ArcGIS puis inscrite dans ArcSDE et la géodatabase, doivent comporter une colonne IdObjet qui est gérée par la géodatabase. Les valeurs de la colonne objectID permettent à ArcGIS d'effectuer différentes opérations, telles que le défilement et l'affichage des jeux de sélection et l'identification des entités.
Comme la plupart des fonctionnalités d'ArcGIS Desktop nécessitent l'unicité de l'identifiant d'objet, vous devez faire attention à ne pas dupliquer les identifiants d'objet lorsque vous utilisez directement la base de données. Par exemple, lors de la création de vues avec une relation un vers plusieurs, les valeurs objectID risquent d'être dupliquées. Ceci peut provoquer un comportement incohérent dans le fonctionnement d'ArcGIS Desktop.
Un identifiant d'objet est ajouté à une table de trois façons :
- Une colonne ObjectID gérée par la géodatabase est automatiquement ajoutée à toute table créée à l'aide d'ArcGIS.
- Vous spécifiez la colonne à utiliser comme champ IdObjet lorsque vous inscrivez une table dans ArcSDE avec la commande sdetable ou sdelayer. Vous pouvez désigner une colonne existante comme identifiant d'objet ou indiquer un nom pour une nouvelle colonne IdObjet. Si vous spécifiez un nouveau nom de colonne, ArcSDE ajoute une colonne de nombres entiers, uniques, de valeur non nulle, portant ce nom à la table. Lorsque vous spécifiez la colonne à utiliser comme identifiant d'objet, vous indiquez également si cette colonne doit être gérée par ArcSDE ou par vous (gérée par l'utilisateur). Remarque :
La géodatabase nécessite un identifiant d'objet géré par le système. Par conséquent, si vous comptez également inscrire la table dans la géodatabase, vous devez inscrire l'identifiant d'objet comme devant être géré par ArcSDE. Si vous définissez à la place un identifiant d'objet géré par l'utilisateur, la géodatabase ajoute une nouvelle colonne IdObjet lorsque vous inscrivez par la suite la table dans la géodatabase. Cette nouvelle colonne ObjectID remplace la colonne que vous avez spécifiée lors de l'inscription de la table avec ArcSDE. Cette opération a également pour effet de transformer le type de données de votre valeur objectID définie par l'utilisateur d'une valeur objectID en un entier long.
- Si vous inscrivez une table dans la géodatabase qui ne comporte pas de colonne appropriée, la géodatabase ajoute à la table une colonne qui répond aux exigences d'une valeur objectID. Si votre table contient déjà une colonne ObjectID, la géodatabase ajoute une colonne nommée OBJECTID_.