使用Hue,如何更改表以使现有列成为主键?
我检查了诸如此类的东西
ALTER TABLE table_name ADD CONSTRAINT colname PRIMARY KEY (cs_id);
在语法上不正确。
注意:数据是使用Kudu文件系统存储的。
答案 0 :(得分:1)
首先,在alter contraint
中将Impala does not support alter table
作为选项。
第二,primary keys are very limited:
主键列必须是CREATE TABLE语句中指定的前几列。
我认为您在定义主键后不能更改它。在Impala中,数据是通过主键进行聚类(即排序)的,因此任何更改都将非常昂贵。
您可能需要重新创建表并重新加载数据。
答案 1 :(得分:1)
以Kudu格式存储时,您需要考虑到在创建表时必须全部创建PK列。 Impala不支持更改主键。 恐怕您需要再次删除并创建表。