Suite

Comment insérer des données dans la table de la base de données postgis ?

Comment insérer des données dans la table de la base de données postgis ?


Je suis un débutant dans la base de données spatiale, donc j'ai beaucoup de problèmes même dans de petites tâches et maintenant j'ai un problème avec l'insertion de données dans la table. J'ai suivi la documentation postgis mais cependant, j'obtiens une erreur lors de l'insertion de données dans la table. Dans le code ci-dessous, j'essaie d'insérer un tableau de coordonnées au format long/lat en les convertissant en points et en les ajoutant au tableau.

INSÉRER DANS les VALEURS de route(ID, ROUTE_NAME, geom) (1, 'route 1', ST_GeomFromText('LINESTRING(ST_MakePoint(27.69858, 85.28154), ST_MakePoint(27.69804, 85.28155), ST_MakePoint(27.69337, 85.28174), ST_MakePoint, ), ST_MakePoint(27.69378, 85.28370), ST_MakePoint(27.69409, 85.28449))',900913));

Structure de création de table : CREATE TABLE ROUTE( ID int4, ROUTE_NAME varchar (25), geom geometry(LINESTRING,900913) );

Mais, j'obtiens "LINESTRING (ST" <-- erreur d'analyse à la position 13 dans l'erreur de géométrie.


Pas besoin deST_MakePoint, enchaînez simplement vos coordonnées dansST_GeomFromText. Vous pouvez simplement écrire quelque chose commeST_GeomFromText('LINESTRING(27.69858 85.28154, 27.69804 85.28155, 27.69337 85.28174, 27.69356 85.28275, 27.69378 85.28370, 27.69409 85.28449)', 900913). Les parties x et y des coordonnées sont séparées par un espace, les paires de coordonnées par des virgules. Voir aussi la documentation ST_GeomFromText pour plus d'informations.


Voir la vidéo: PostgreSQLPostGIS n3 - Insérer des données attributaires depuis des fichier csv