2012-05-18 12 views
5

Ho installato un database Postgres (versione 9.1) e cercando di creare una tabella in grado di memorizzare ST_Geometry con la seguente query:come utilizzare il tipo di dati di geometria nella tabella di Postgres?

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

Ma sto ottenendo l'errore come segue:

ERROR: type "st_geometry" does not exist 

Devo configurare ulteriormente l'installazione di postgres per abilitare il tipo di dati di geometria.

risposta

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

Si dovrebbe avere installato in voi DB per far funzionare tutto questo.

11

Il nome del tipo corretto è geometry. Se si utilizza PostGIS 2.0 è possibile utilizzare una typmod:

-- 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) 
);