【发布时间】:2012-11-19 04:09:41
【问题描述】:
我正在开发一个用于研究 Apache Cassandra 和 Java EE 6 的小型 Web 应用程序。 Cassandra 版本是 1.1.6。
有一个问题让我发疯... 我创建了一个带有计数器的表(使用 cqlsh v. 3.0.0)
CREATE TABLE test (
author varchar PRIMARY KEY,
tot counter
)
并以这种方式放置一些值:
update test set tot = tot +1 where author = 'myAuthor';
列族完美更新
author | tot
----------+-----
myAuthor | 1
但是,如果您尝试删除此行,然后再次更新(使用相同的键),则不会发生任何事情!该表不再更新,我不知道为什么:在我看来,一旦你使用了一个密钥,你就不能再使用它了。 我在 datasax 文档 (http://www.datastax.com/docs/1.1/references/cql/cql_lexicon) 中寻找线索,但没有找到解决方案。
有人可以帮助我吗? 提前致谢
【问题讨论】:
-
如果我想改变计数器的值,我必须更新计数器 update table set counter = counter i> -1 但我的问题是:为什么我不能再使用删除键了?