如何检查是否应用了cql查询

bfnvny8b  于 2021-06-14  发布在  Cassandra
关注(0)|答案(0)|浏览(275)

我在cassandra前面的golang上有一个api服务器,所以我使用gocql作为驱动程序。如果有人试图在cassandra中创建重复的条目,我想返回一个错误,所以我不仅需要幂等运算(可以通过if not exists子句实现),而且还需要知道是否应用了查询。像select primary_keys from table where primary_keys=blah limit 1这样的初步请求不是一个选项,因为插入操作应该是原子的。
当我在cqlsh中运行下面的示例时,cassandra告诉我是否应用了查询:

  1. cqlsh> create table tests.demo (
  2. ... uuid text PRIMARY KEY,
  3. ... data text
  4. ... );
  5. cqlsh> insert into tests.demo (uuid, data) values ('test', 'data') if not exists;
  6. applied
  7. -----------
  8. True
  9. cqlsh> insert into tests.demo (uuid, data) values ('test', 'data') if not exists;
  10. applied | uuid | data
  11. -----------+------+------
  12. False | test | data

因为query.exec()只返回错误,所以有没有任何选项可以用gocql实现同样的效果?
谢谢您!

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题