我在cassandra db中有一个问题。我想重命名列名。但它显示语法错误。因为我的列名包含空格。那么我该如何更改列名:
例如:sample column
进入samplecolumn
?
答案 0 :(得分:2)
您可以使用alter table重命名列,但是对它有很多限制。由于sstables是不可变的,为了改变磁盘上的状态,一切都必须重写。
RENAME的主要用途是更改遗留表中缺少的CQL生成的主键和列名的名称。以下限制适用于RENAME操作:
您只能重命名群集列,它们是主键的一部分。
您无法重命名分区键。
您可以为重命名的列编制索引。
如果已在其上创建索引,则无法重命名列。
您无法重命名静态列(因为您无法在表格的主键中使用静态列)。
https://docs.datastax.com/en/cql/3.1/cql/cql_reference/alter_table_r.html