CREATE TABLE list_parted (a int, b int) PARTITION BY LIST(a);
CREATE TABLE list_part_1 PARTITION OF list_parted FOR VALUES IN (1, 2, 3);
CREATE TABLE list_part_2 PARTITION OF list_parted FOR VALUES IN (6, 7, 8);
INSERT INTO list_parted VALUES (7, 77);
ALTER TABLE list_parted ADD PRIMARY KEY (b);
Run Code Online (Sandbox Code Playgroud)
当我尝试为上表添加主键时,出现此错误:
错误:主键约束定义中的列不足
SQL 状态 0A000
详细信息:表“list_parted”上的主键约束缺少作为分区键一部分的列“a”。
小智 19
您需要在 PK 声明中包含分区列或使用这两列创建一个 UNIQUE idx,结果相同。
CREATE TABLE customer(
id int,
country_code character varying(5),
name character varying(100),
PRIMARY KEY (id, country_code)
)
PARTITION BY LIST (country_code);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14468 次 |
| 最近记录: |