CouchDB - 更新文档



使用 cURL 更新文档

您可以通过使用 cURL 工具通过 PUT 方法向服务器发送 HTTP 请求来更新 CouchDB 中的文档。以下是更新文档的语法。

curl -X PUT http://127.0.0.1:5984/database_name/document_id/ -d '{ "field" : "value", "_rev" : "revision id" }'

示例

假设数据库 my_database 中有一个 ID 为 001 的文档。您可以如下所示删除它。

首先,获取要更新的文档的修订版 ID。您可以在文档本身中找到文档的_rev,因此请获取如下所示的文档。

$ curl -X GET http://127.0.0.1:5984/my_database/001
{
   "_id" : "001",
   "_rev" : "2-04d8eac1680d237ca25b68b36b8899d3 " ,
   "age" : "23"
}

使用文档中的修订版 ID _rev 来更新文档。这里我们将年龄从 23 更新到 24。

$ curl -X PUT http://127.0.0.1:5984/my_database/001/ -d
' { " age " : " 24 " , " _rev " : " 1-1c2fae390fa5475d9b809301bbf3f25e " } '

{ " ok " : true , " id " : " 001 " , " rev " : " 2-04d8eac1680d237ca25b68b36b8899d3 " }

验证

要验证文档,请使用 GET 请求再次获取文档,如下所示。

$ curl -X GET http://127.0.0.1:5984/my_database/001
{
   " _id " : " 001 ",
   " _rev " : " 2-04d8eac1680d237ca25b68b36b8899d3 " ,
   " age " : " 23 "
 }
注意

以下是在更新文档时需要注意的一些要点。

  • 我们在请求中发送的 URL 包含数据库名称和文档 ID。

  • 更新现有文档与更新整个文档相同。您无法向现有文档添加字段。您只能将文档的全新版本写入具有相同文档 ID 的数据库中。

  • 我们必须将修订版本号作为 JSON 请求的一部分提供。

  • 返回的 JSON 包含成功消息、正在更新的文档的 ID 和新的修订信息。如果您想更新文档的新版本,则必须引用此最新的修订版本号。

使用 Futon 更新文档

要删除文档,请打开http://127.0.0.1:5984/_utils/ URL 以获取 CouchDB 的概述/索引页面,如下所示。

Create Document

选择存在要更新文档的数据库并单击它。这里我们正在更新名为tutorials_point的数据库中的文档。您将获得数据库中文档的列表,如下所示。

Update Document

选择要更新的文档并单击它。您将获得文档的内容,如下所示。

Document Contents

这里,要将位置从德里更新到海德拉巴,请单击文本框,编辑字段,然后单击绿色按钮以保存更改,如下所示。

Save Changes
广告