Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
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é ?

Annonce

Printemps des cartes 2024

#1 Wed 25 March 2009 16:22

Ouistiti
Participant actif
Date d'inscription: 4 Jun 2008
Messages: 58

Importer des mdb dans PostGIS

Bonjour,

Je voudrais savoir s'il existe un moyen pour importer des base de données Access dans Postgres sans passer par ArcGIS.

Cordialement.


Le Ouistiti

Hors ligne

 

#2 Wed 25 March 2009 18:06

geomaticienTN
Juste Inscrit !
Lieu: tunis, tunisie
Date d'inscription: 31 Aug 2006
Messages: 6

Re: Importer des mdb dans PostGIS

bonjour,

Juste une petite remarque, Est ce que vous parlez d'une Geodatabse (ESRI) ou juste une base de données alphanumérique.
si le premier cas :il faut  reconvertir en shapefile
créer la même structure sous postgreSQL
puis par la commande postgreSQL/postgis shp2pgsql tu intègres les données sous postgreSQL

Si tu disposes uniquement une base de données alphanumérique
tu exportes les données en csv puis par la commande copy tu intègres les données sous postgres juste respecte la structure de la base
j'espère que je t'ai aidé

Bonne continuation

hatem BEN HASSINE
Spécialiste en système d'informations géographiques


Cordialement
Hatem BEN HASSINE
Chef de projet en SIG

Hors ligne

 

#3 Wed 25 March 2009 19:36

Pierre
DesCartesPourUnMondeMeilleur
Date d'inscription: 22 Sep 2005
Messages: 1643

Re: Importer des mdb dans PostGIS

Aloha
FME ?


art X I. Déclaration des Droits de l’Homme et du Citoyen 1789
La libre communication des pensées et des opinions est un des droits les plus précieux de l’Homme : tout Citoyen peut donc parler, écrire, imprimer librement, sauf à répondre de l’abus de cette liberté, dans les cas déterminés par la Loi.

Hors ligne

 

#4 Wed 25 March 2009 20:21

ppluvinet
Participant assidu
Lieu: LYON
Date d'inscription: 6 Aug 2007
Messages: 608

Re: Importer des mdb dans PostGIS

Bonjour,

s'il s'agit d'une table sous access, il y a un moyen assez facile, c'est de créer un lien odbc.
Pour cela il faut télécharger le driver odbc de postgresql.
http://www.postgresql.org/ftp/odbc/versions/msi/
Puis sous access, faire un export de la table avec ce lien ODBC.
ce qui est bien est que l'on garde la dimension des attributs.
Le seul souci peut être la taille du fichier. Si plusieurs million de lignes, oubliez et passez par la commande copy


Pascal PLUVINET

Hors ligne

 

#5 Thu 26 March 2009 12:44

Ouistiti
Participant actif
Date d'inscription: 4 Jun 2008
Messages: 58

Re: Importer des mdb dans PostGIS

Bonjour,

Tout d'abord concernant FME, c'est effectivement  quelque chose de ce genre qui me conviendrai. Mon soucis est que ce logiciel est payant et je ne sais pas s'il prend en charge les base de données ACCESS (à vérifier...). J'ai donc penser à la version OpenSource de FME soit Talend... Bon je vous avoue je suis novice dans le domaine et je ne sais pas ce que vaut ce logiciel, cependant après téléchargement j'ai abandonné devant la vraisemblable complexité de la machine !! Par contre si une personne me dit que c'est ce qu'il me faut alors je me retrousserai les manches bien sur...

Ensuite, concernant le lien ODBC, il convient seulement pour UNE table ? ou permet aussi de créer un lien vers une base de données ACCESS ? (à vérifier aussi ...)

Enfin, concernant la solution de geomaticenTN, cela m'obligerai de faire la manipulation pour chacun des fichiers contenu dans ma base de données ACCESS ? (D'ailleurs celle-ci contient à la fois des tables géographiques et des tables attributaires...)


Le Ouistiti

Hors ligne

 

#6 Thu 26 March 2009 13:00

Yves
Membre du bureau
Lieu: Aix-les-Bains
Date d'inscription: 22 Mar 2006
Messages: 9855
Site web

Re: Importer des mdb dans PostGIS

Ouististi,

TOS répond à vos besoin. Mais il est complexe à prendre en main (j'en sais quelque chose, je l'utilise au quotidien depuis plusieurs semaines/mois).

As tu regardé du coté de Kexi ou de OpenOffice.org ?

Y.


Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !!  - GeoRezo vous aide ? Aidez GeoRezo !

Hors ligne

 

#7 Thu 26 March 2009 13:20

Ludo
Participant assidu
Lieu: Messanges
Date d'inscription: 5 Sep 2005
Messages: 231
Site web

Re: Importer des mdb dans PostGIS

Bonjour
Tu parles de tables géographiques et de tables attributaires dans ta base acces, ça ressemble fortement à une geodatabase personnelle esri. Si c'est le cas ogr2ogr doit faire l'affaire puisque ogr supporte les géodatabase http://www.gdal.org/ogr/ogr_formats.html
En tout cas il faut que tu fasses attention car si c'est une géodatabase et que tu dois récupérer l'aspect géographique, il te faut un outil spécialisé pour cela, par exemple, ce n'est pas tos qu'il faudra mais spatial data integrator qui rajoutera l'aspect spatial à tos et de la même manière une connexion odbc te permettra de récupérer tout ce que tu veux mais pas que ta partie spatiale se retrouve dans postgis ...
Donc attention à cela en fonction de ce que tu as vraiment besoin.

Dernière modification par Ludo (Thu 26 March 2009 13:21)

Hors ligne

 

#8 Thu 26 March 2009 13:35

Yves
Membre du bureau
Lieu: Aix-les-Bains
Date d'inscription: 22 Mar 2006
Messages: 9855
Site web

Re: Importer des mdb dans PostGIS

Ludo,

Attention SDI ne lit pas les geodatabase d'esri. seulement les shp et les fichiers au format MapInfo, et PostGIS bien sur wink

Y.


Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !!  - GeoRezo vous aide ? Aidez GeoRezo !

Hors ligne

 

#9 Thu 26 March 2009 13:37

Ludo
Participant assidu
Lieu: Messanges
Date d'inscription: 5 Sep 2005
Messages: 231
Site web

Re: Importer des mdb dans PostGIS

rha lala et voila ce que c'est que répondre sans avoir essayé, merci de la précision Yves, en tout cas le raisonnement reste valable, à savoir quelles sont tes données géographiques ? comment sont elle stockées ? et souhaites tu les récupérer ?

Hors ligne

 

#10 Fri 27 March 2009 12:20

Ouistiti
Participant actif
Date d'inscription: 4 Jun 2008
Messages: 58

Re: Importer des mdb dans PostGIS

Bonjour à tous et merci pour vos réponses.

Apparemment OpenOffice pourrait résoudre mon problème selon le tutoriel suivant :
http://fr.openoffice.org/Documentation/ … migrfr.pdf
Mais dans ce tutoriel, il n'est pas question de base de données géographiques... est ce que le lien ODBC me permettra de récupérer mes champs de géométrie ? Si vous avez déjà la réponse tenez moi au courant, sinon je vous redirai ça quand je l'aurai testé...

En parlant de test, j'ai une configuration Windows XP sur laquelle je fais tourner une machine virtuelle (VirtualBox avec un invité Unbuntu 8.04 sur lequel sont installés Apache, Php5, MapServer, PostGIS et Mapfish pour développer un Web-SIG). Cependant, pour le tutoriel d'OpenOffice, il faut que ces deux machines communiquent en réseau. J'ai bien essayé de configurer la mise en réseau de ma machine virtuelle selon le tuto suivant :
http://naeh.net/virtualbox-configurer-l … virtuelle/ et avec l'aide de divers post sur divers forum.
Mais cela ne fonctionne pas, je vous passe les détails (à moins que quelqu'un puisse m'aider...? ). En fait, je voudrai savoir si vous connaissez un forum ou autre qui me permettrai de poser mon problème et de configurer la mise en réseau de ma machine virtuelle.

Cordialement.


Le Ouistiti

Hors ligne

 

#11 Wed 01 April 2009 13:03

Ouistiti
Participant actif
Date d'inscription: 4 Jun 2008
Messages: 58

Re: Importer des mdb dans PostGIS

Bonjour,

J'ai enfin pu tester un peu de tout pour importer du mdb dans postgis. Voici mes commentaires (et quelques questions... pour pas changer)

Donc tout d'abord, j'ai essayé avec le tutoriel proposé par OpenOffice.org qui utilise une connexion ODBC : ça na pas marché :-s j'avais un message d'erreur "L'appel ODBC a échoué". Donc après plusieurs essais j'ai abandonné cette solution.

Je me suis alors tourné vers ogr2ogr car dans mes recherches je suis tombé par hasard sur le fait qu'ogr gère les connexions ODBC (avec un driver bien sur...). Après plusieurs test et des problèmes au niveau des encodages différents entre postgis et MS Access, je me suis rendu compte que mon import bien qu'ayant fonctionné (ma table et tout mes enregistrements étaient dans postgis, NB: bien utile l'import de toutes les tables du mdb en meme tps est possible). Cependant, mon champs de géométrie (the_geom) étaient vides pour les tables ayant des attributs géographiques !! Alors question : comment sont stockés les attribut géographiques dans un mdb (sachant que je peux ouvrir directement ces tables provenant du mdb dans ArcGIS) !! et ya t'il un moyen pour que ogr2ogr récupère ces informations ?

Enfin, la dernière solution que j'avais testé auparavant, c'est d'exporter mes tables en shp depuis ArcGIS et de les importer une par une (j'en ferais certainement un script quand le moment viendra histoire de pas y passer ma vie). Ici tout marche très bien SAUF que au niveau de l'export des tables en shp les noms des champs sont tronqués à 10 caractères... Ya t'il un moyen de pallier a ce problème?

Donc voila un peu pour mes imports de mdb vers postgis. j'espère que vous pourrez répondre à mes petites questions subsidiaires.

Cordialement.


Le Ouistiti

Hors ligne

 

#12 Wed 01 April 2009 13:14

Yves
Membre du bureau
Lieu: Aix-les-Bains
Date d'inscription: 22 Mar 2006
Messages: 9855
Site web

Re: Importer des mdb dans PostGIS

Bonjour,

Ouistiti a écrit:

Cependant, mon champs de géométrie (the_geom) étaient vides pour les tables ayant des attributs géographiques !! Alors question : comment sont stockés les attribut géographiques dans un mdb (sachant que je peux ouvrir directement ces tables provenant du mdb dans ArcGIS) !! et y a t'il un moyen pour que ogr2ogr récupère ces informations ?


Je ne pense pas et c'est bien cela le problème des formats propriétaires, vous en faîte cruellement l'expérience.

Ouistiti a écrit:

Enfin, la dernière solution que j'avais testé auparavant, c'est d'exporter mes tables en shp depuis ArcGIS et de les importer une par une (j'en ferais certainement un script quand le moment viendra histoire de pas y passer ma vie). Ici tout marche très bien SAUF que au niveau de l'export des tables en shp les noms des champs sont tronqués à 10 caractères... Ya t'il un moyen de pallier a ce problème?


En passant par un autre format, tel que le mif/mid, tab, etc. Cette limitation est dû au format DBF.

Bon courage,

Y.


Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !!  - GeoRezo vous aide ? Aidez GeoRezo !

Hors ligne

 

#13 Wed 01 April 2009 13:24

freesnowpetrel
Participant assidu
Lieu: Pretoria, Afrique du Sud
Date d'inscription: 1 Mar 2007
Messages: 222

Re: Importer des mdb dans PostGIS

Bonjour,

Si si, c'est possible, OGR sait lire les geodatabase Arcgis, en tout cas les geodatabases personnelles au format Acces:
Source: http://www.gdal.org/ogr/drv_pgeo.html
Je ne l'ai pas fait recemment et je ne sais plus comment j'ai fait mais je l'ai fait avec ogr2ogr il y a un an ou deux et j'ai pu recuperer mes geometries sans avoir a convertir dans un autre format au prealable.
J'ai aussi reussis a afficher directement les geometries de ma geodatabase avec mapserver qui utilise OGR pour lire les donnees.

Tiens regardes cette page en anglais, chapitre:ESRI GeoDatabase (MDB format), ils te donnent la syntaxe.

A+
Rodolphe

Dernière modification par freesnowpetrel (Wed 01 April 2009 13:28)

Hors ligne

 

#14 Wed 01 April 2009 13:32

Yves
Membre du bureau
Lieu: Aix-les-Bains
Date d'inscription: 22 Mar 2006
Messages: 9855
Site web

Re: Importer des mdb dans PostGIS

freesnowpetrel a écrit:

Bonjour,

Si si, c'est possible, OGR sait lire les geodatabase Arcgis, en tout cas les geodatabases personnelles au format Acces:
Source: http://www.gdal.org/ogr/drv_pgeo.html


Aaarhg, mais bien sur ! Cela me titillait bien un peu mais là je suis passé à côté wink

Merci Rodolphe

Y.

Dernière modification par Yves (Wed 01 April 2009 13:33)


Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !!  - GeoRezo vous aide ? Aidez GeoRezo !

Hors ligne

 

#15 Wed 01 April 2009 14:27

Ouistiti
Participant actif
Date d'inscription: 4 Jun 2008
Messages: 58

Re: Importer des mdb dans PostGIS

Effectivement,

Ca marche nikel !!!! merci !
Bizarrement, j'avais essayé de lire le mdb de cette facon au début de mes recherches mais ca n'avait pas marché.... j'avais peu etre oublié quelque chose.. bref l'essentiel est que maintenant ca marche.

Du coup, j'ai une question qui me trotte :

Est-ce que c'est la connexion via ODBC qui aurait provoqué le vide dans mes colonnes géométriques comme dit précédemment ?? Je reformule : est-ce que ODBC gère les informations géographiques ? Si oui, je comprends pas pourquoi ça n'a pas marché.je vous met la commande utilisée précédemment au cas ou vous pourriez me l'expliquer :

Code:

ogr2ogr -overwrite -f "PostgreSQL" PG:"host=*** port=*** dbname=*** user=*** password=***" ODBC:"test" SITES -lco GEOMETRY_NAME=the_geom

En tout cas merci encore pour le reste !!


Le Ouistiti

Hors ligne

 

#16 Wed 01 April 2009 14:41

Ludo
Participant assidu
Lieu: Messanges
Date d'inscription: 5 Sep 2005
Messages: 231
Site web

Re: Importer des mdb dans PostGIS

Dommage que tu n'es pas lu correctement tous les postes car je t'avais parlé de ça dans un précédent post ... (tu aurais gagné du temps )
A mon avis le problème principal, c'est que ce n'est pas une simple base access que tu as à disposition mais une géodatabase personnelle ESRI qui stockent la géométrie d'une manière particulière et dans un format propriétaire. Il te faut donc un outil qui sache lire le format des géodatabase personnelles esri.

Hors ligne

 

#17 Wed 01 April 2009 14:57

Ouistiti
Participant actif
Date d'inscription: 4 Jun 2008
Messages: 58

Re: Importer des mdb dans PostGIS

C'est vrai que tu me l'avais dit plus tôt mais justement j'avais un problème avec le PGeo qui semble maintenant résolu et ce par je ne sais quel miracle... du coup je pensai que c'était mort pour cette option...

Donc en gros l'ODBC ne sait pas lire les géodatabase personnelles ESRI, du moins pas la partie qui stocke la géométrie... OK ca me rassure, la bourde ne venait pas d'une erreur de je ne sais trop quoi mais juste du mauvais driver utilisé

Merci en tout cas.

Cordialement.


Le Ouistiti

Hors ligne

 

#18 Wed 01 April 2009 15:03

freesnowpetrel
Participant assidu
Lieu: Pretoria, Afrique du Sud
Date d'inscription: 1 Mar 2007
Messages: 222

Re: Importer des mdb dans PostGIS

Re bonjour

Dans la doc du PGeo driver d'OGR il disent :

OGR optionally supports reading ESRI Personal GeoDatabase .mdb files via ODBC.


Donc OGR via le PGeo driver utilise une connection ODBC pour acceder aux donnees geometriques.
Je suppose que la difference viens du fait que dans un cas, OGR utilise le PGeo driver pour lire le format proprietaire des donnees geometriques stockees dans la base et dans le cas d'une simple liaison ODBC il ne peut pas lire ce format de geometries ou en tout cas ne le reconnais pas comme geometries...

Rodolphe

Hors ligne

 

#19 Thu 17 November 2011 19:06

VianneyD
Participant assidu
Date d'inscription: 30 May 2011
Messages: 153

Re: Importer des mdb dans PostGIS

Bonjour,

Je relance ce sujet car je suis actuellement bloqué sur l'utilisation de la fameuse commande ogr2ogr pour insérer une mdb dans PostGis. Je travaille sous Ubuntu.

J'ai scrupuleusement suivi les instructions données sur http://www.gdal.org/ogr/drv_pgeo.html.
J'ai utilisé Aptitude pour installer les dernières versions de libmdbodbc, gdal-bin et mdbtools. J'ai installé manuellement unixodbc.

J'ai correctement configuré mes fichiers /etc/odbcinst.ini et ~/.odbc.ini. Mon fichier /usr/lib/libmdbodbc.so.0 existe bien. Lorsque j'appelle la commande odbcinst, elle me renvoie le bon driver et le bon DSN. Les exécutables ogrinfo et ogr2ogr se trouvent bien dans usr/bin. La commande mdb-tables fonctionne également sur ma géodatabase.

Sauf que lorsque je teste ogrinfo sur ma geodatabase, j'obtiens l'erreur suivante :

Code:

geometre@serveurg:~$ ogrinfo PGeo:plu_nanterre
ERROR 1: PGeo: MDB Tools driver not found!

ERROR 1: Unable to install MDB driver for ODBC!

ERROR 1: PGeo: MDB Tools driver not found!

ERROR 1: Unable to install MDB driver for ODBC!

FAILURE:
Unable to open datasource `PGeo:p_nanterre' with the following drivers.
  -> ESRI Shapefile
  -> MapInfo File
  -> UK .NTF
  -> SDTS
  -> TIGER
  -> S57
  -> DGN
  -> VRT
  -> AVCBin
  -> REC
  -> Memory
  -> CSV
  -> GML
  -> KML
  -> Interlis 1
  -> Interlis 2
  -> SQLite
  -> ODBC
  -> PGeo
  -> OGDI
  -> PostgreSQL
  -> MySQL

PGeo ne semble pas trouver le driver mdbtools... J'ai longuement cherché sur le net d'où peut provenir cette erreur mais sans succès.

D'avance merci pour toute aide ou toute idée. Je peux afficher le détail de mes fichiers ini si besoin.

Vianney


Vianney Dugrain

Hors ligne

 

#20 Fri 18 November 2011 11:14

VianneyD
Participant assidu
Date d'inscription: 30 May 2011
Messages: 153

Re: Importer des mdb dans PostGIS

OK, j'ai trouvé le problème :

Lors de l'installation avec Aptitude, gdal a été configuré par défaut et aucun lien n'a été fait avec l'ODBC. Il m'a donc fallu désinstaller gdal, et installer manuellement le paquet source gdal-1.8.1 (http://trac.osgeo.org/gdal/wiki/DownloadSource) en précisant le chemin vers l'odbc :

Code:

cd gdal
./ configure --with-odbc=/usr/local/odbc
make
sudo make install

Et ne pas oublier d'ajouter le chemin vers les librairies au LD_LIBRARY_PATH :

Code:

export LD_LIBRARY_PATH=/usr/local/lib

En espérant que cela puisse servir à d'autres.


Vianney Dugrain

Hors ligne

 

Pied de page des forums

Powered by FluxBB