我无法找到如何将xid
(事务ID类型)列设置为在表中唯一。它抱怨btree缺少类方法,我不知道如何绕过它。
这是使用PostgreSQL 9.0。
无法在这些论坛或互联网上找到任何类似的问题。 : - (
答案 0 :(得分:4)
原因是没有为数据类型<>
(等等)定义xid
运算符。尝试:
SELECT '123'::xid <> '123'::xid
失败。
您可以通过添加如下唯一索引来规避此限制:
CREATE UNIQUE INDEX tbl_xid_col_uni_idx
ON tbl (cast(cast(xid_col AS text) AS int));