alter表:使列成为主键

prdp8dxp  于 2021-06-26  发布在  Impala
关注(0)|答案(2)|浏览(417)

使用hue,如何更改表以使一个预先存在的列成为主键?
我检查了一些东西,比如: ALTER TABLE table_name ADD CONSTRAINT colname PRIMARY KEY (cs_id); 语法不正确。
注意:数据是用kudu文件系统存储的。

py49o6xq

py49o6xq1#

当您存储为kudu时,您需要考虑在创建表时需要全部创建pk列。 Impala 不支持改变主键。恐怕您需要删除并重新创建表。

3xiyfsfu

3xiyfsfu2#

首先, Impala 不支持 alter contraint 作为一个选项 alter table .
其次,主键非常有限:
主键列必须是create table语句中指定的第一列。
我不认为在定义主键之后您可以更改它。在impala中,数据是按主键聚集(即排序)的,因此任何更改都会非常昂贵。
您可能需要重新创建表并用数据重新加载它。

相关问题