java - Spring-data-couchbase - 运行更新查询

标签 java spring couchbase sql++ spring-data-couchbase

是否可以使用 spring-data 执行 N1QL 更新查询?

即我有以下更新查询:

"UPDATE USERS USE KEYS $id SET location = $location"

我尝试使用couchbaseTemplate.queryN1QL方法,但它不起作用。

有没有使用 spring data 甚至原生 couchbase java SDK 解决这个问题的方法?

最佳答案

CouchbaseTemplate 更适合 Spring Data 文档的用例,因此它期望运行返回特定元素的查询,并最终解码为实体(例如,User) > 对象)。

如果您想运行更自由格式的查询(例如更新),您始终可以从模板访问 native SDK。对于您的情况:

String paStatement = "UPDATE USERS USE KEYS $id SET location = $location";
JsonObject paramValues = JsonObject.create().put("id", theId).put("location", "theLocation");
N1qlQuery query = N1qlQuery.parametrized(paStatement, paramValues);
template.getCouchbaseBucket().query(query);

关于java - Spring-data-couchbase - 运行更新查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35842988/

相关文章:

java - XML 与 JSON。哪个更适合存储小块数据?

java - 仅当确切实体不存在时才保存实体

java - 使用 Couchbase 进行单元和集成测试

node.js - 从 Node.js SDK 向 Couchbase 发出并行数据库请求

couchbase - 这个 couchbase 索引有什么问题?

java - 当存在多个数据源时Spring动态事务管理器

java - 如何解析Java文件并自动更改变量名称/方法名称/类名称?

java - ANDROID 如何检查两个按钮是否同时保持在一起?

Spring HTTP Invoker session (状态)存储

java - 使用 spring boot 进行 rest webservices 异常处理