对Postegresql 10中的分区进行序列检查

时间:2017-10-17 15:13:05

标签: postgresql sequence

可以在分区表上保留唯一序列吗? 我正在使用Postgresql 10

1 个答案:

答案 0 :(得分:1)

这是9.6。我不确定你为什么要这样做 - 你能解释一下为什么你需要id在分区中是唯一的吗?

CREATE SCHEMA so46793511;
set search_path=so46793511;
CREATE SEQUENCE partitioned_seq;
CREATE TABLE partitioned (
  id integer default nextval('partitioned_seq'),
  val text
);
CREATE TABLE partitioned_1 ( LIKE partitioned ) INHERITS (partitioned);
CREATE TABLE partitioned_2 ( LIKE partitioned ) INHERITS (partitioned);
INSERT INTO partitioned_1 (val) VALUES ('a'), ('b'), ('c');
INSERT INTO partitioned_2 (val) VALUES ('a'), ('b'), ('c');
SELECT * FROM partitioned;

DROP SCHEMA so46793511 CASCADE;

注意:这不包括auto-pick partitions when inserting的所有内容。