2012-05-18 23 views
5

tôi đã thiết lập một cơ sở dữ liệu Postgres (phiên bản 9.1) và cố gắng để tạo ra một bảng có khả năng lưu trữ st_geometry với truy vấn sau đây:làm thế nào để sử dụng datatype hình học để postgres bảng?

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

Nhưng tôi nhận được lỗi như sau:

ERROR: type "st_geometry" does not exist 

Tôi có cần phải định cấu hình cài đặt postgres của mình hơn nữa để bật kiểu dữ liệu hình học hay không.

Trả lời

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

Bạn phải cài đặt trong db để làm việc này.

11

Tên loại chính xác là geometry. Nếu bạn đang sử dụng PostGIS 2.0, bạn có thể sử dụng 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) 
); 
Các vấn đề liên quan