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 16 October 2013 16:19

Thomas Williamson
Participant actif
Lieu: Poitiers
Date d'inscription: 16 Nov 2008
Messages: 92

Colonne geom vide

Bonjour,

J'ai une table stockant des polygones [geometry(MultiPolygon)] dont la colonne geom n'affiche aucune valeur. D'après ce que j'ai pu trouver, il s'agirait d'un bug d'affichage lié à pgAdmin III. En effet, l'affichage dans QGIS montre qu'une géométrie est bel et bien stockée puisque la couche de polygones s'affiche parfaitement. Je trouve cela assez gênant car j'utilise parfois des fonctions PostGIS pour mettre à jour cette colonne sur certaines lignes et le bug ne me permet pas de vérifier si la mise à jour a bien été effectuée...

Avez-vous déjà rencontré ce problème et éventuellement trouvé une solution ?
Pour info : message posté en parallèle ici sur le forum pgAdmin du site postgresql-fr. Je mettrais à jour de part et d'autre si une solution existe.

Merci !

Thomas

Dernière modification par Thomas Williamson (Wed 16 October 2013 16:24)

Hors ligne

 

#2 Wed 16 October 2013 16:40

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

Re: Colonne geom vide

Bonjour,

Thomas Williamson a écrit:

Avez-vous déjà rencontré ce problème


Oui très souvent !

Thomas Williamson a écrit:

et éventuellement trouvé une solution ?


Non à part lancé la requête SELECT count(id) FROM maTable WHERE the_geom is null;

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

 

#3 Wed 16 October 2013 16:46

Thomas Williamson
Participant actif
Lieu: Poitiers
Date d'inscription: 16 Nov 2008
Messages: 92

Re: Colonne geom vide

Bonjour,

En effet, une requête de vérification s'impose. Toutefois j'ai remarqué qu'en exécutant des requêtes qui renvoient une sélection de lignes, les valeurs s'affichent bien... Serait-ce plutôt lié au nombre de lignes affichées ? Vivement une prochaine version qui débug la chose.

Merci pour votre réponse !

Thomas

Dernière modification par Thomas Williamson (Wed 16 October 2013 16:46)

Hors ligne

 

#4 Wed 16 October 2013 16:53

Nicolas Granier
Participant assidu
Date d'inscription: 19 Apr 2007
Messages: 271

Re: Colonne geom vide

J'ai déjà rencontré ce cas de figure.
Dans mon cas, il s'agit uniquement d'un problème d'affichage de pgAdmin, si l'on fait un copier coller de la cellule "soit-disant vide" et que l'on colle le résultat dans un éditeur de texte on a bien la géométrie. L'autre moyen de vérification est de renvoyer la géométrie sous forme textuelle en utilisant st_astext(the_geom).
D'après votre description du problème, je pencherai plus pour ce bug d'affichage.

A+
Nicolas GRANIER

Hors ligne

 

#5 Wed 16 October 2013 17:10

MathieuB
Membre du bureau
Lieu: Montpellier
Date d'inscription: 18 Jan 2006
Messages: 1220
Site web

Re: Colonne geom vide

Bonjour,

Je trouve cela assez gênant car j'utilise parfois des fonctions PostGIS pour mettre à jour cette colonne sur certaines lignes et le bug ne me permet pas de vérifier si la mise à jour a bien été effectuée...


N'hésitez pas à utiliser la clause RETURNING dans votre UPDATE pour voir les attributs après modification :

Code:

UPDATE ma_table SET geom = st_buffer(geom,50)
WHERE ...
RETURNING st_astext(geom)

Mathieu BOSSAERT
Association GeoRezo

Hors ligne

 

#6 Thu 17 October 2013 08:16

Thomas Williamson
Participant actif
Lieu: Poitiers
Date d'inscription: 16 Nov 2008
Messages: 92

Re: Colonne geom vide

Bonjour,

En effet, la clause RETURNING est intéressante ! Je n'y pensais pas habituellement...

Sinon, je viens de tester ça :

Code:

SELECT * FROM matable ;

...et ma colonne geom s'affiche bien dans le résultat de requête. C'est quand même bizarre ce truc !

Thomas

Dernière modification par Thomas Williamson (Thu 17 October 2013 08:16)

Hors ligne

 

#7 Thu 17 October 2013 11:14

Nicolas Ribot
Membre
Lieu: Toulouse
Date d'inscription: 9 Sep 2005
Messages: 1536

Re: Colonne geom vide

Bonjour,

"It's not a bug, its a feature" smile

PgAdmin limite la taille des colonnes affichées dans son interface graphique pour éviter des blocages ou des lenteurs.
C'est en fait assez pratique: imaginez que votre colonne contienne des gros objets (plusieurs centaines de Mo), son affichage prendrait du temps

D'autres éditeurs SQL ne se comportent pas comme ca (NetBeans par exemple) et affiche tout le temps le contenu des colonnes geo.

Sinon comme le dit Yves, c'est surtout par requete SQL que vous pouvez vérifier que les opérations se sont bien passées, ou en faisant afficher des infos sur les objets geo et pas les objets eux-memes:
geometryType(geom) pour afficher le type de geometrie, ou st_npoints(geom) pour afficher le nombre de points formant la géométrie.

Edit: c'est meme devenu une entrée sur le site PostGIS: http://postgis.net/2013/10/05/tip_pgAdmin_shows_no_data

Nicolas

Hors ligne

 

#8 Thu 17 October 2013 13:11

Thomas Williamson
Participant actif
Lieu: Poitiers
Date d'inscription: 16 Nov 2008
Messages: 92

Re: Colonne geom vide

Bonjour,

Merci pour ces compléments d'information ! Le point spécialement dédié à ce comportement est très clair dans la FAQ PostGIS.

Bonne journée,

Thomas

Hors ligne

 

#9 Sun 20 October 2013 09:57

ranalisolofo.larrys
Participant occasionnel
Lieu: Ambolonkandrina
Date d'inscription: 19 Jul 2007
Messages: 40
Site web

Re: Colonne geom vide

Bonjour,

Il suffit de double cliquer sur la cellule pour afficher le contenu du geom...Si après double click, rien ne s'affiche alors effectivement la geometry est vide.

Larrys

Hors ligne

 

#10 Mon 21 October 2013 07:55

Thomas Williamson
Participant actif
Lieu: Poitiers
Date d'inscription: 16 Nov 2008
Messages: 92

Re: Colonne geom vide

Bonjour,

Non, le double-clic sur une cellule n'affiche pas la géométrie (cf. pièce jointe à ce message), dans mon cas... Une zone s'ouvre bel et bien mais n'affiche aucune valeur. Si je fais un CTRL + A puis que je copie la sélection et la colle dans un éditeur de texte, la géométrie existe pourtant (pour info : un contour de commune française occupe 34124 caractères !).

Thomas


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Hors ligne

 

Pied de page des forums

Powered by FluxBB