Ich habe eine räumliche Tabelle mit der SRID 4326 erstellt. Jetzt möchte ich die Gesamtprojektion in SRID: 32644 in eine neue Tabelle ändern. Die alte Tabelle sollte unverändert bleiben.
Ich habe eine räumliche Tabelle mit der SRID 4326 erstellt. Jetzt möchte ich die Gesamtprojektion in SRID: 32644 in eine neue Tabelle ändern. Die alte Tabelle sollte unverändert bleiben.
Antworten:
Wenn Sie mit PostGIS 2.0+ arbeiten, können Sie:
ALTER TABLE mytable
ALTER COLUMN geom
TYPE Geometry(Point, 32644)
USING ST_Transform(geom, 32644);
Point
durch The same geometry type as it was
?
CREATE TABLE new_table AS
SELECT ST_Transform(the_geom,32644) AS the_geom
FROM original_table;
In Ihrer räumlichen Tabelle sollte sich ein Feld mit einer Ganzzahl-ID befinden, damit Sie es zu QGIS hinzufügen können.
folge diesem Weg:
CREATE TABLE 'new_table' AS SELECT * FROM 'old_table';
ALTER TABLE new_table DROP CONSTRAINT enforce_srid_the_geom;
ALTER TABLE new_table DROP CONSTRAINT enforce_geotype_the_geom;
UPDATE new_table SET the_geom = ST_SetSRID(the_geom, new_srid);
ALTER TABLE new_table ADD CONSTRAINT enforce_srid_the_geom CHECK (st_srid(the_geom) = (new_srid));
ALTER TABLE new_table ADD CONSTRAINT enforce_geotype_geom CHECK ((geometrytype(the_geom) = 'POINT'::text OR the_geom IS NULL);
Wenn Sie in der ersten Zeile keine neue Tabelle erstellen können, versuchen Sie bitte zuerst 2. und 3. und erstellen Sie dann Ihre Tabelle mit der Nummer 1.
ich hoffe es hilft dir ...