Couchbase Java SDK N1QL 更新问题
Couchbase Java SDK N1QL UPDATE issue
我正在使用 Java 2.7 SDK 试验 Java 和 Couchbase 6.0 社区版。
我正在尝试从我的 java 应用程序 Couchbase Java 2.7 SDK:
执行一个简单的更新查询
String query ="UPDATE admin SET FIELDNAME='TEST'"
N1qlParams params = N1qlParams.build().adhoc(false);
N1qlQuery nquery = N1qlQuery.simple(query, params);
N1qlQueryResult nqr= this.rbucket.query(nquery);
我收到以下异常(最有意义的部分):
com.couchbase.client.core.CouchbaseException: N1qlQuery Error - {"msg":"syntax error - at UPDATE","code":3000}
实际异常是这样开始的:
Exception in thread "main" com.couchbase.client.core.CouchbaseException: Error while preparing plan
当然 - 此查询在 Couchbase 网络上运行良好UI,我可以毫无问题地进行更新。
仅供参考:我尝试转义单引号,甚至尝试将列设置为等于自身 - 同样的错误。
Select 查询以类似的方式执行,没有任何问题。
"admin' 不是一个好的存储桶名称,因为它通常与一些保留关键字相关,如果您仍然想使用此名称,则必须在其周围使用反引号:
update `admin` set FIELDNAME = 'TEST'
如果您还没有主索引,它也可能会要求您创建主索引。
我正在使用 Java 2.7 SDK 试验 Java 和 Couchbase 6.0 社区版。
我正在尝试从我的 java 应用程序 Couchbase Java 2.7 SDK:
执行一个简单的更新查询String query ="UPDATE admin SET FIELDNAME='TEST'"
N1qlParams params = N1qlParams.build().adhoc(false);
N1qlQuery nquery = N1qlQuery.simple(query, params);
N1qlQueryResult nqr= this.rbucket.query(nquery);
我收到以下异常(最有意义的部分):
com.couchbase.client.core.CouchbaseException: N1qlQuery Error - {"msg":"syntax error - at UPDATE","code":3000}
实际异常是这样开始的:
Exception in thread "main" com.couchbase.client.core.CouchbaseException: Error while preparing plan
当然 - 此查询在 Couchbase 网络上运行良好UI,我可以毫无问题地进行更新。
仅供参考:我尝试转义单引号,甚至尝试将列设置为等于自身 - 同样的错误。
Select 查询以类似的方式执行,没有任何问题。
"admin' 不是一个好的存储桶名称,因为它通常与一些保留关键字相关,如果您仍然想使用此名称,则必须在其周围使用反引号:
update `admin` set FIELDNAME = 'TEST'
如果您还没有主索引,它也可能会要求您创建主索引。