我使用 Postgres-XL 10R1。我创建了表packs
和序列packs_id_seq
相同的 SQL:
CREATE TABLE packs (
id integer NOT NULL,
name varchar(10) NOT NULL
) DISTRIBUTE BY REPLICATION;
CREATE SEQUENCE packs_id_seq
AS integer
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
我尝试使用 packs_id_seq 作为 id 列的默认值。
ALTER TABLE packs ALTER COLUMN id SET DEFAULT (nextval('packs_id_seq'));
但是有点问题
INSERT INTO packs (name) VALUES ('test');
INSERT 0 0
为什么行没有插入?
因此,我将子句更改为DISTRIBUTE
.
ALTER TABLE packs DISTRIBUTE BY ROUNDROBIN;
ALTER TABLE packs DISTRIBUTE BY MODULO(id);
ALTER TABLE packs DISTRIBUTE BY HASH(id);
但是又遇到了同样的问题。
有任何想法吗?谢谢。