CQL ALTER TABLE not working (add column + with properties)



我正在尝试运行以下CQL命令

ALTER TABLE keyspace_name_abc.table_name 
ADD (field1 text, field2 text)
WITH default_time_to_live = 15552000;

但是它不工作,我得到的错误是:

SyntaxException: line 1:NN mismatched input 'WITH' expecting EOF (...field1 text, field2 text [WITH] ...)

如果我分开运行该命令,它可以工作。在CQL中合并多个更改有什么限制吗?

ALTER TABLE keyspace_name_abc.table_name 
ADD (field1 text, field2 text);
ALTER TABLE keyspace_name_abc.table_name 
WITH default_time_to_live = 15552000;

这样,命令被接受。

我不相信您能够更新列子集的默认TTL,因此您必须将这些语句分开并运行它们,如:

ALTER TABLE keyspace_name_abc.table_name ADD (field1 text, field2 text);
ALTER TABLE keyspace_name_abc.table_name WITH default_time_to_live = 15552000;

如果您需要特定列的非默认TTL,那么您需要在插入中添加它,例如:

INSERT INTO keyspace_name_abc.table_name (col1, col2, field1, field2) VALUES ('col1text', 'col2text', 'field1text', 'field2text') USING TTL 86400;

相关内容

  • 没有找到相关文章

最新更新