Ich habe eine Tabelle in meiner PostGIS-Mutter erstellt. Ich kann keinen Punkt einfügen.
Was stimmt nicht mit meiner Anfrage?
CREATE TABLE app (
p_id INTEGER PRIMARY KEY
);
SELECT AddGeometryColumn('app','the_geom','4326','POINT',2);
INSERT INTO app(p_id, the_geom) VALUES(2, POINT(-71.060316, 48.432044));
Nach der letzten Abfrage wird ein Fehler angezeigt.
ERROR: column "the_geom" is of type geometry but expression is of type point
LINE 1: ...SERT INTO app(p_id, the_geom) VALUES(2, POINT(-71....
^
HINT: You will need to rewrite or cast the expression.
********** Error **********
ERROR: column "the_geom" is of type geometry but expression is of type point
SQL state: 42804
Hint: You will need to rewrite or cast the expression.
Character: 53
Ich überprüfe bereits meine PostGIS-Version.
SELECT PostGIS_full_version();
Ich habe die folgende Ausgabe bekommen ..
"POSTGIS="1.5.3" GEOS="3.3.1-CAPI-1.7.1" PROJ="Rel. 4.7.1, 23 September 2009" LIBXML="2.7.3" USE_STATS"
Wenn Sie mit einem Java-Client arbeiten, empfehle ich, die Binärtypen zum Übertragen der Daten zu verwenden. Aus dem Speicher habe ich eine Leistungsverbesserung von 10% festgestellt, als ich diese Änderung gegenüber der ST_AsEWKT-Methode vorgenommen habe.
quelle