#1 Fri 24 April 2009 15:47
- massol
- Juste Inscrit !
- Lieu: ALBI
- Date d'inscription: 26 Sep 2006
- Messages: 6
Créer un object_id
Bonjour,
Je souhaiterais créer sous arcgis 9 un champ object_id dans une table.
Je m'explique, je souhaite que ce champ soit un identifiant unique pour un enregistrement.
Cet object_id devrais s'incrémenter de 1 lorsque l'on rajoute un enregistrement et surtout rester toujours le même pour l'enregistrement. Cet a dire que si je supprime un enregistrement en début de table je ne veut pas que tout les object_id en suivant soit réatribuer (autrement dis que la suppression crée des trous dans le champ object_id, un peut a la manière d'un champ serial dans postgres).
J'espère avoir été assez clair.
Merci d'avance pour toute l'aide que vous pourrez m'apporter.
Hors ligne
#2 Wed 29 April 2009 09:47
Re: Créer un object_id
Bonjour,
Cette table a été créée sous ArcMap? Car si ce n'est pas le cas, dans ArcToolBox, il est possible de générer une table de requête dans Data Management Tools. Utiliser l'option USE_KEY_FIELDS qui ajoutera un champs object_id.
Ensuite, il faudra exporter la table créée car elle est générée à la volée et n'est pas enregistrée sur le disque dur en tant que telle.
Je ne sais pas si ça fonctionne avec une table créée sous ArcMap (la table d'un shp par exemple).
J'espère avoir été claire. Cette solution n'est pas des plus simples, mais c'est la seule que je connaisse.
Bon courage,
Sandrine
Hors ligne
#3 Wed 29 April 2009 10:33
- massol
- Juste Inscrit !
- Lieu: ALBI
- Date d'inscription: 26 Sep 2006
- Messages: 6
Re: Créer un object_id
Bonjour Sandrine,
Tout d'abord merci pour la réponse. Malheureusement je ne trouve pas dans l'ArcToolBox l'option USE_KEY_FIELD.
De quelle catégorie d'outil s'agit il : création de table, création de champ...?
Merci par avance.
Sylvain
Hors ligne
#4 Wed 29 April 2009 12:24
- pbader
- Participant actif
- Date d'inscription: 21 Sep 2007
- Messages: 79
Re: Créer un object_id
Bonjour.
Mais s'il faut exporter la table, est-ce que ça ne revient pas au même que de recalculer un champ "objectiID" = FID après une insertion de nouvel objet ?
Merci
Paul
Hors ligne
#5 Wed 29 April 2009 13:36
- massol
- Juste Inscrit !
- Lieu: ALBI
- Date d'inscription: 26 Sep 2006
- Messages: 6
Re: Créer un object_id
Bonjour Paul,
Le problème avec le champ FID est qu'il est automatiquement réattribuer lors d'une suppressions d'enregistrement.
Autrement dit si il y a suppression d'un enregistrement tout les enregistrement suivant dans la table changeront de FID (car le FID de l'enregistrement supprimé sera automatiquement réattribuer à l'enregistrement suivant).
Hors ligne
#6 Wed 29 April 2009 14:55
Re: Créer un object_id
Re,
Effectivement, j'ai oublié une info dans mon post. L'outil s'appelle "Générer une table de requête" et il est dans Data Management Tools. Je ne sais pas exactement où car je passe par l'onglet Rechercher d'ArcToolBox (je n'arrive plus à ajouter la boite Data Management Tool).
Et une fois que l'outil est lancé, il faut bien sélectionner l'option de champs de clé "USE_KEY_FIELD" (qui est par défaut).
C'est une solution que m'avait donné le support ESRI pour importer des tables issue d'une bdd Access qui était considérée comme une géodatabase mais pour laquelle il manquait alors les ObjectId, empêchant certaines manip.
J'espère que ça va marcher...
Bon courage,
Sandrine
Hors ligne
#7 Wed 29 April 2009 15:47
- massol
- Juste Inscrit !
- Lieu: ALBI
- Date d'inscription: 26 Sep 2006
- Messages: 6
Re: Créer un object_id
Merci beaucoup pour ces précisions.
J'ai bien trouvé l'outil. Mon seul problème et que visiblement celas ne fonctionne pas avec les shape.
Je garde toutefois cette solution qui pourrais mettre utile par la suite.
Merci encore.
Hors ligne