Utworzyłem tabelę przestrzenną z SRID: 4326. Teraz chcę zmienić całkowitą projekcję na SRID: 32644 na nową tabelę. Stary stół powinien pozostać niezmieniony.
Utworzyłem tabelę przestrzenną z SRID: 4326. Teraz chcę zmienić całkowitą projekcję na SRID: 32644 na nową tabelę. Stary stół powinien pozostać niezmieniony.
Odpowiedzi:
Jeśli korzystasz z PostGIS 2.0+, możesz przejść:
ALTER TABLE mytable
ALTER COLUMN geom
TYPE Geometry(Point, 32644)
USING ST_Transform(geom, 32644);
Point
go The same geometry type as it was
?
CREATE TABLE new_table AS
SELECT ST_Transform(the_geom,32644) AS the_geom
FROM original_table;
W tabeli przestrzennej powinno znajdować się pole z liczbą całkowitą, aby dodać je do QGIS.
postępuj w ten sposób:
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);
jeśli nie możesz utworzyć nowej tabeli w pierwszej linii, spróbuj 2. i 3. najpierw stwórz swoją tabelę z numerem 1.
Mam nadzieję, że Ci to pomoże...