2012-05-18 8 views
5

Ich habe Setup eine Postgres-Datenbank (Version 9.1) und zu versuchen, eine Tabelle zu speichern ST_Geometry mit der folgenden Abfrage der Lage zu erstellen:Wie verwendet man Geometry-Datentyp zur Postgres-Tabelle?

CREATE TABLE sensitive_areas (area_id integer, name varchar(128), zone st_geometry); 

Aber ich den Fehler bin immer wie folgt:

ERROR: type "st_geometry" does not exist 

Muss ich meine Postgres-Installation weiter konfigurieren, um den Geometrie-Datentyp zu aktivieren?

Antwort

4
CREATE TABLE sensitive_areas (area_id integer, name varchar(128), zone geometry); 

Sie sollten in Ihrem db installiert haben, damit dies funktioniert.

11

Der korrekte Typ lautet geometry. Wenn Sie PostGIS 2.0 verwenden, können Sie ein typmod verwenden:

-- If you haven't done so already 
CREATE EXTENSION postgis; 

-- Make a table of Polygons, using long/lat coords 
CREATE TABLE sensitive_areas (
    area_id integer primary key, 
    name varchar(128), 
    zone geometry(Polygon,4326) 
);