我已经设置了一个 postgres 数据库(版本 9.1)并尝试使用以下查询创建一个能够存储 st_geometry 的表:
CREATE TABLE sensitive_areas (area_id integer, name varchar(128), zone st_geometry);
但我收到如下错误:
ERROR: type "st_geometry" does not exist
我是否需要进一步配置我的 postgres 安装以启用几何数据类型。
我已经设置了一个 postgres 数据库(版本 9.1)并尝试使用以下查询创建一个能够存储 st_geometry 的表:
CREATE TABLE sensitive_areas (area_id integer, name varchar(128), zone st_geometry);
但我收到如下错误:
ERROR: type "st_geometry" does not exist
我是否需要进一步配置我的 postgres 安装以启用几何数据类型。
正确的类型名称是geometry
. 如果您使用的是 PostGIS 2.0,则可以使用 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)
);
CREATE TABLE sensitive_areas (area_id integer, name varchar(128), zone geometry);
你应该已经PostGIS
在你的数据库中安装了它才能工作。