我处于需要更改复合主键的情况,如下所示:
旧主键:(id、来源、attribute_name、updated_at);
我想要的新主键:(源、id、attribute_name、updated_at);
我发出了以下(类似 mysql)命令:
ALTER TABLE general_trend_table
DROP PRIMARY KEY,
ADD PRIMARY KEY(source, id, attribute_name, updated_at);
我收到以下错误:
错误请求:第 1:38 行在输入“PRIMARY”处没有可行的替代方案
知道如何解决这个问题吗?更具体地说,我想知道有什么方法可以更改 cassandra 中的主键吗?
最佳答案
无法更改主键,因为它定义了数据的物理存储方式。
您可以使用新主键创建一个新表,从旧表复制数据,然后删除旧表。
关于cassandra - 更改 cassandra CQL 3.0 中的复合主键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22139747/