PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 10/02/2011 21:33:31

Mapinfo, erreur d'import de données

Bonjour,

je me permets d'ouvrir une nouvelle discution car je n'ai pas trouvé de solutions dans les messages similaires. Voici mon cas :
Je souhaite importer dans Postgres/Postgis des fichiers MapInfo (TAB).
Je suis en environnement Windows 7 64 bits, Postgres 8.4.7.1 (postgresql-8.4.7-1-windows.exe), Postgis 1.4 (postgis_1_4_pg84.exe), MApInfo 10.0, odbc : psqlodbc-08_02_0300.

Suite à mes différentes installations, j'ai noté qu'il fallait créer une nouvelle base avec un encodage particulier, le win1252 au lieu de l'UTF8 :

           pg_dump -U postgres -E WIN1252 template_postgis > c:\template_postgis.sql

           createdb -U postgres -E WIN1252 -T template0 template_postgis_WIN1252

           psql -d template_postgis_WIN1252 -f c:\template_postgis.sql -U postgres

           puis création d'une nouvelle base de données MONICA via pgAdmin en utilisant le template postgis_win1252

           j'ai modifié le fichier postgresql.conf pour que l'encodage y soit précisé aussi : "client_encoding = win1252"


je vais maintenant dans MapInfo, je lance easyloader 10.0.13, dans les informations de connexion, je pointe sur ma connexion base de données système, (qui tape sur ma base de données MONICA avec le bon encodage), j'indique le fichier .TAB que je souhaite importer, la première fois, j'ai du créer un catalogue de carte, dans les paramètre, je travaille bien en arrivée sur ma base PostGIS spatiale.
Message d'erreur lors de l'import :
Echec de l'insertion pour la ligne : 1 commune
ERREUR : séquence d'octets invalide pour l'encodage "WIN1252" : 0*00;
Error while executing the query
Valeur de données : 1

J'ai réalisé plusieurs tests, en créer un fichier TAB le plus simple possible, je pars d'un fichier TAB vide, je créer une colonne sans majuscule, sans accent ou caractère spéciaux, j'ai testé en créant simplement un point, cela ne fonctionne pas, seulement une ligne, etc. idem, seul les entités de type texte passent sinon, j'ai toujours le message d'erreur du même type que celui indiqué.

Avez vous des idées pour réaliser ce traitement avec MapInfo uniquement (je sais que je pourrais utiliser d'autres logiciels mais le but est vraiment d'obtenir la compatibilité avec MapInfo), des indications sur le paramétrage, des documents à consulter ?
j'ai pas mal chercher sur différents sites mais je reste bloqué pour le moment.

Un grand merci pour votre aide !
Romain

Hors ligne

#2 10/02/2011 22:14:30

gleu
Administrateur

Re : Mapinfo, erreur d'import de données

Aucune idée en ce qui concerne MapInfo. par contre, il est clair que si vous essayez d'enregistrer un octet 0x00 dans un champ texte, cela ne fonctionnera pas. Quelque soit l'encodage.


Guillaume.

Hors ligne

#3 14/02/2011 11:04:40

Re : Mapinfo, erreur d'import de données

Bonjour,

Le problème est finalement résolu en passant du driver odbc : psqlodbc-08_02_0300. à celui ci : psqlodbc-08_4_2

Hors ligne

Pied de page des forums