如何解决Cassandra不使用CQL更新数据,而是使用mutator来更新数据
|| 使用以下代码,我尝试更新一行Keyspace fKeyspace = HFactory.createKeyspace(KEYSPACE,fCluster);
// Update with CQL
CqlQuery<String,String,String> cqlQuery =
new CqlQuery<String,String>(fKeyspace,fStringS,fStringS);
cqlQuery.setQuery(
\"INSERT INTO Fahrer (KEY,\'first\') VALUES(\'fahrer1\',\'FirstnameUpdated\')\");
QueryResult<CqlRows<String,String>> result = cqlQuery.execute();
// Update with mutator
Mutator<String> mutator = HFactory.createMutator(fKeyspace,fStringS);
MutationResult mr = mutator.insert(\"fahrer2\",\"Fahrer\",HFactory.createStringColumn(\"first\",\"SecondUpdated\"));
不执行CQL查询的更新,而是使用增幅器进行更新。错误在哪里?
解决方法
您似乎已调换了键名和列名。对于键,您有:
mutator上的\“ fahrer2 \”和CQL查询上的\“ first \”。
如果您还没有,请参阅以下内容,了解有关Hector(以及一般而言)中CQL的更多信息:
https://github.com/rantav/hector/wiki/Using-CQL
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。