13

多くの地理コード化されたデータを含む通常の postgres データベースがあります。これは、緯度と経度として 2 つの列が表示されているだけです。

このデータベースを PostGIs データベースに変換したいと考えています。誰かが私が持っているデータベースを変換する方法を提案できますか? 新しい postgis tempalte ベースのデータベースを作成してから、データ全体を 1 つずつ移動したくありません。

4

2 に答える 2

14

まず、PostGIS がシステムにインストールされていることを確認してから、次を使用してデータベース用の PostGIS 拡張機能を作成します。

CREATE EXTENSION postgis;

次に、ジオメトリ列を使用して各テーブルを空間的に有効にし、列に長さ/緯度のデータ ポイントを入力します。

ALTER TABLE mytable ADD COLUMN geom geometry(Point,4326);
UPDATE mytable SET geom = ST_SetSRID(ST_MakePoint(long, lat), 4326);

geographyタイプの使用も検討してください。

ALTER TABLE mytable ADD COLUMN geog geography(Point,4326);
UPDATE mytable SET geog = ST_MakePoint(long, lat)::geography;
于 2013-02-24T22:05:50.403 に答える
2

私はこれが古いことを知っています...しかし、以前の問題に対処するために何かを追加します:

@Cerin、apt-get install postgisだけでなく、apt-get install postgresql-xx-postgis-2.1を確認してください。私も前にその問題を抱えていました

于 2014-07-18T19:30:43.263 に答える