【问题标题】:How to do partial update of a document如何对文档进行部分更新
【发布时间】:2010-11-09 10:35:15
【问题描述】:

我需要有关如何更新 CouchDB 中的字段的指导。我通过控制台尝试了 curl 它工作正常但以编程方式。我不明白如何更新特定字段说“名称”。这是在 CouchDB 中更新文档的 sn-p,它可以正常工作并返回更新后的修订 id。

HttpPut httpPutRequest = new HttpPut(hostUrl +"/"+ docId);
StringEntity body = new StringEntity(jsonDoc.toString());
httpPutRequest.setEntity(body);

httpPutRequest.setHeader("Accept", "application/json");
httpPutRequest.setHeader("Content-type", "application/json");

【问题讨论】:

    标签: couchdb


    【解决方案1】:

    CouchDB 不支持部分更新。换句话说,要更新文档中的字段,您必须更新本地 JSON 文档中的字段,并将该文档作为一个整体推送到 CouchDB。

    您仍然可以通过发出 HTTP PUT 来完成此操作,确保文档中包含适当的 _rev。

    更多详情请见in the wiki

    【讨论】:

      【解决方案2】:

      可以通过编写自己的update function 来支持部分更新。

      需要明确的是,它实际上并不是真正的部分更新。它仍然将整个目标文档更新为新版本。但是更新是直接在数据库本身上完成的。因此,您可以在客户端指定部分更新,而不是检索和发送整个文档

      【讨论】:

        猜你喜欢
        • 2018-04-28
        • 1970-01-01
        • 1970-01-01
        • 2017-02-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-12-13
        • 1970-01-01
        相关资源
        最近更新 更多