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

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Thu 03 May 2012 15:06

Oliv38
Participant actif
Date d'inscription: 21 Dec 2011
Messages: 142

Création colonne géométrique PostGIS

Bonjour,

c'est peut-être une question redondante et je m'en excuse si c'est le cas.

A partir d'un fichier excel contenant des données liées à la localisation de points, je l'ai importer dans Postgresql/postgis. Je souhaiterais maintenant créer la colonne géométrique associée. J'ai réussit à créer la colonne par un SELECT AddGeometryColumn mais cette colonne est vide. Je possède pourtant dans ma table la localisation X - Y de chacun de mes points.

Comment faire pour remplir cette colonne automatiquement?

Je vous remercie par avance.

Hors ligne

 

#2 Thu 03 May 2012 16:13

Loic_GR
Moderateur
Lieu: Besancon
Date d'inscription: 12 May 2011
Messages: 1025
Site web

Re: Création colonne géométrique PostGIS

Bonjour,

Si vous avez vos données X et Y dans deux champs séparés, il va falloir créer une géométrie de type ponctuel avec vos deux champs x et y.

Pour ce faire, vous pouvez utiliser un outil tel Qgis ou alors utiliser une fonction native de Postgis et plus particulièrement la fonction st_makepoint()

http://postgis.refractions.net/docs/ST_MakePoint.html

Bonne continuation


Freelance traitements ETL FME certifié: www.sitdi-france.fr Twitter : @sitdifrance
Site perso ~ www.partir-en-vtt.com

Hors ligne

 

#3 Thu 03 May 2012 17:18

Oliv38
Participant actif
Date d'inscription: 21 Dec 2011
Messages: 142

Re: Création colonne géométrique PostGIS

Merci bien, cela répond tout à fait à ma question et mon besoin.

A+
Oliv'

Hors ligne

 

#4 Thu 25 October 2012 13:46

guibouvier
Participant actif
Date d'inscription: 23 Jan 2007
Messages: 104

Re: Création colonne géométrique PostGIS

Bonjour,

je déterre ce post car je n'arrive pas à mes fins.

J'ai de la même manière une table sous Postgis avec deux champs correspondants aux coordonnées X,Y en Lambert 93.

J'ai créé un champ "geom" de type géométrie avec la fonction "Add Geometry Column", jusque là tout va bien.

Je voudrais maintenant remplir automatiquement ce champ "geom" avec la fonction GeomFromText pour les 200 occurences de ma table.

Voici la requête SQL que j'écris:

Code:

update releve SET geom =geomFromText ('POINT('x' 'y')',2154);

je précise que mes champs "x" et "y" sont de type real.

Voici l'erreur qui s'affiche après éxécution :

Code:

ERROR:  parse error - invalid geometry
CONTEXTE : SQL function "geomfromtext" statement 1

Si quelqu'un peut éclairer ma lanterne.

D'avance merci pour vos réponses
Gui

Hors ligne

 

#5 Thu 25 October 2012 14:59

jmarsac
Participant assidu
Lieu: NICE
Date d'inscription: 26 Oct 2005
Messages: 572
Site web

Re: Création colonne géométrique PostGIS

Bonjour,

Essayez plutôt

update releve SET geom =geomFromText ('POINT(x y)',2154);


Jean-Marie
Azimut

Hors ligne

 

#6 Thu 25 October 2012 15:07

guibouvier
Participant actif
Date d'inscription: 23 Jan 2007
Messages: 104

Re: Création colonne géométrique PostGIS

re,

j'ai testé la requete suivante:

Code:

update releve SET geom=geomFromText('POINT(x y)', 2154);

et... toujours la même erreur "Invalid geometry"


est ce que mon type de champ "real" pour les coordonnées X et Y serait incompatible ? Faut il les passer en caractère ?

Dernière modification par guibouvier (Thu 25 October 2012 15:08)

Hors ligne

 

#7 Thu 25 October 2012 17:41

jmarsac
Participant assidu
Lieu: NICE
Date d'inscription: 26 Oct 2005
Messages: 572
Site web

Re: Création colonne géométrique PostGIS

Quelles valeurs ont x et y ?


Jean-Marie
Azimut

Hors ligne

 

#8 Thu 25 October 2012 18:27

jmarsac
Participant assidu
Lieu: NICE
Date d'inscription: 26 Oct 2005
Messages: 572
Site web

Re: Création colonne géométrique PostGIS

Le type de votre colonne autorise-t-il les géométries de type POINT ?


Jean-Marie
Azimut

Hors ligne

 

#9 Thu 25 October 2012 20:30

guibouvier
Participant actif
Date d'inscription: 23 Jan 2007
Messages: 104

Re: Création colonne géométrique PostGIS

bonsoir,

merci pour votre aide.
le champ X de type real contient les coordonnées en abscisse des points en lambert 93 (ex: 840000,50)
le champ Y de type real contient les coordonnées en ordonnée des points en lambert 93 (6450300,50)
quant au champ geom, il s'agit d'un champ de type geometrie de Postgis créé par la fonction Addgeometrycolumn

lorsque je créé un update avec des valeurs de coordoonnées directement sur une occurence de la table, cela fonctionne.
on dirait que c'est la référence aux champs X,Y dans la formule update qui pose souci....

Hors ligne

 

#10 Thu 25 October 2012 21:19

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

Re: Création colonne géométrique PostGIS

Bonjour,

Il faut concaténer les champs x et y avec les chaines de caractères pour créer le WKT :

Code:

update releve SET geom=geomFromText('POINT('||x||' '||y||')', 2154);

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

 

#11 Thu 25 October 2012 21:20

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

Re: Création colonne géométrique PostGIS

Bonjour,

Je déplace le thread sur GeoBD 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

 

#12 Fri 26 October 2012 09:31

guibouvier
Participant actif
Date d'inscription: 23 Jan 2007
Messages: 104

Re: Création colonne géométrique PostGIS

Bonjour,

j'ai testé la requête de Yves avec concaténation des chaines de caractère. Cela fonctionne puisque la colonne geom est bien remplie.

Merci pour votre aide.

Gui

Hors ligne

 

#13 Wed 14 November 2012 21:30

bambayaya
Juste Inscrit !
Date d'inscription: 5 Nov 2010
Messages: 1

Re: Création colonne géométrique PostGIS

bonjour , je viens d'installer postgresql et son extension spatiale postgis. mon objectif est de créer une base de données avec pour model postgis, c'est à dire contenant les champs relative aux données géographiques, mon problème qu'en suivant les étapes détaillées sur le site de postgis.fr, je n'arrive pas à créer ma base de données, je reçois un message d'erreur comme ceci : une erreur s'est produite: erreur: la base de données source 'template_postgis_20' est accédée par d'autres utilisateurs
Détail: 1 autre session utilise la base de données.  j'aimerais donc savoir , comment je peux m'y prendre pour résoudre ce problème.

Hors ligne

 

#14 Thu 15 November 2012 09:51

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

Re: Création colonne géométrique PostGIS

Bonjour,

Quelles commandes utilisez-vous, qu'etes-vous en train de faire lorsque l'erreur se produit ?

Vous utilisez PgAdmin ?
Si oui, une fois connecté au cluster PostgreSQL, le programme lock les autres bases et empeche qq operations comme drop.
Vous pouvez essayer de vous deconnecter de PgAdmin et relancer vos commandes.

Nicolas

Hors ligne

 

Pied de page des forums

Powered by FluxBB