banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oubliĂ© ?

#1 Wed 20 February 2013 11:26

AlexisX
Juste Inscrit !
Lieu: Lille
Date d'inscription: 20 Feb 2013
Messages: 2

[ARCGIS 10] Ajouter ObjectID

Bonjour,

J'ai une base de donnée sous Access, les tables n'ont donc pas d'ObjectID.

Je dois travailler sur ArcGis car une partie des donnĂ©es doit ĂȘtre entrĂ©e Ă  partir de donnĂ©es gĂ©ographiques (lignes, points).
Je suis donc connecté en OLE DB.

J'ai besoin que mes tables de ma Base de donnée Access aient un ObjectID pour pouvoir travailler dessus (notamment intégrer les données des "lignes" automatiquement dans la table "Ligne").

L'aide d'ArcGis semble dire que cela est possible grĂące Ă  l'outil GĂ©nĂ©rer une table de requĂȘte (Make Query Table) http://help.arcgis.com/fr/arcgisdesktop … 006r000000

J'utilise donc cette fonction :

ADD_VIRTUAL_KEY_FIELD —Indique qu'aucun champ de clĂ© n'a Ă©tĂ© sĂ©lectionnĂ©, mais qu'une colonne ObjectID dynamique doit ĂȘtre gĂ©nĂ©rĂ©e. Pour cela, vous devez copier les donnĂ©es dans un espace de travail local, gĂ©rĂ© par le systĂšme, et ajouter un champ contenant des valeurs uniques Ă  la copie. La couche ou la vue tabulaire accĂšde alors Ă  la copie et utilise le champ ajoutĂ© comme champ de clĂ©.

Cependant cela créer une nouvelle table identique avec l'objectID mais ne rajoute pas le champ directement dans la table liée à Access.

Bref, ma question est donc : Quel est la méthode pour créer un objectID dans une table d'une BDD connectée en OLE DB ?

Merci pour vos réponses,

Hors ligne

 

#2 Wed 20 February 2013 14:58

Kevin Jousseaume
Participant assidu
Lieu: Nanterre, région parisienne
Date d'inscription: 20 Mar 2006
Messages: 217

Re: [ARCGIS 10] Ajouter ObjectID

Bonjour,

J'ai peur que ce que vous essayez de faire ne soit pas faisable, tout du moins pas ainsi... Pour créer des données géographiques depuis ArcGIS Desktop en standard, il faut que vos données soient au format shapefile ou geodatabase. Une geodatabase peut se concrétiser suivant différents formats : geodatabase fichier, geodatabse SDE (basée sur un SGBD du type Oracle ou SQL Server) ou geodatabase personnelle (format Access).

Dans le cas de la geodatabase personnelle, si son format de stockage est une base Access, cela ne signifie pas pour autant que toute base Access soit une geodatabase personnelle. Dans une geodatabase personnelle, il y a un ensemble de tables de mĂ©tadonnĂ©es propres Ă  ArcGIS. Et l'insertion ou la suppression d'enregistrements dans une table en passant par des requĂȘtes pures SQL sont Ă  proscrire car ces mĂ©tadonnĂ©es ne sont pas actualisĂ©es : vous devez passer par ArcMap, par les outils de geotraitements ou les ArcObjects pour rĂ©aliser ces mises Ă  jour.

Si les donnĂ©es de votre bases Access ne sont pas mises Ă  jour par d'autres biais, je vous conseille de crĂ©er une geodatabase personnelle depuis ArcCatalog puis d'y importer les donnĂ©es de votre base Access. Il faut pour cela que vous disposiez de champs avec les coordonnĂ©es X/Y et que vous utilisiez l'outil "GĂ©nĂ©rer une couche d'Ă©vĂ©nements XY" http://help.arcgis.com/fr/arcgisdesktop … 06z000000/

Si vos données Access sont mises à jour par d'autres applications, il faudra réfléchir à une autre solution...

Cordialement,
Kevin

Hors ligne

 

#3 Wed 20 February 2013 15:51

AlexisX
Juste Inscrit !
Lieu: Lille
Date d'inscription: 20 Feb 2013
Messages: 2

Re: [ARCGIS 10] Ajouter ObjectID

Bonjour et merci de votre réponse,

Je comprends donc que je dois trouver une autre solution, je ne suis pas sur d'avoir bien compris la votre.

Pour plus de facilité je vais essayer d'expliquer un peu mieux ce que je cherche à faire :
- Je possÚde des données géométriques, principalement des lignes, chaque ligne possÚde des attributs et un identifiant unique.
- Ma Base de donnée Access contient différentes tables reliées.
- Je souhaites que les attributs des lignes puissent simplement renseigner ma base Access, qui sera complétée également manuellement pour certaines tables.
- J'ai créé ma table Ligne dans Access avec tout ses attributs.
La difficulté est que je souhaites qu'à l'ajout (ou à la suppression) d'une ligne, la table Access (Ligne) soit directement mise à jour.

En espérant avoir été plus clair,
Je suis preneur de toute suggestion,
Merci beaucoup !

Hors ligne

 

Pied de page des forums

Copyright Association GeoRezo