Couchbase v6.0:更新文档内容而不重置文档过期(TTL)值

问题描述 投票:0回答:2

我正在使用.Net Couchbase SDK(CouchbaseNetClient软件包)来创建一个新文档,同时我为该文档设置了到期值。有效期(TTL)值设置正确并且也可以正常工作。

问题陈述-创建文档后,我需要更新其正在使用N1QL的某些内容。这里出现问题,它将文档过期值重置为0。有什么方法可以在更新文档内容时不重置文档过期。

.net couchbase
2个回答
0
投票

使用N1QL进行的任何突变(UPDATE,INSERT,UPSERT,MERGE)将始终将到期值设置为0。

通过路线图设置通过N1QL的到期时间。


0
投票

如@vsr所述,您当前无法通过N1QL DML语句维护文档的TTL。在6.0(及更早版本)中,您可以插入带有到期时间的文档的唯一方法是通过SDK。

但是,您可以使用N1QL作为方法,或者如果要在SDK级别上对其进行操作,则可以检索TTL。

例如:Select meta().expiration from bucket where meta().id = "xyz"

© www.soinside.com 2019 - 2024. All rights reserved.