PostgreSQL EXCLUDE USING错误:数据类型整数没有默认的运算符类
在PostgreSQL 9.2.3中我试图创建这个简化的表:
CREATE TABLE test ( user_id INTEGER,startend TSTZRANGE,EXCLUDE USING gist (user_id WITH =,startend WITH &&) ); 但我得到这个错误:
PostgreSQL docs use this example对我不起作用: CREATE TABLE room_reservation ( room text,during tsrange,EXCLUDE USING gist (room WITH =,during WITH &&) ); 相同的错误消息. And this one,对我来说也不起作用: CREATE TABLE zoo ( cage INTEGER,animal TEXT,EXCLUDE USING gist (cage WITH =,animal WITH <>) ); 相同的错误消息. 我可以毫无问题地创建它: CREATE TABLE test ( user_id INTEGER,EXCLUDE USING gist (startend WITH &&) ); 还有这个: CREATE TABLE test ( user_id INTEGER,EXCLUDE USING btree (user_id WITH =) ); 我花了很多时间寻找有关如何完成这项工作的提示,或者弄清楚为什么它不起作用.有任何想法吗?
按照手册
at the location you linked to中的说明安装附加模块
btree_gist :
在现代的PostgreSQL中,您只需要运行(每个数据库一次): CREATE EXTENSION btree_gist; 您需要先在操作系统中安装“contrib”软件包.细节取决于您的操作系统和使用的软件存储库.对于Debian家族来说,它通常是postgresql-contrib-9.2(对于Postgres 9.2).或者只是为Red Hat家族提供postgresql-contrib.在SO上考虑这个相关的答案: > Error when creating unaccent extension on PostgreSQL (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |