codecamp

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 "
 }
注意 
以下是在更新文档时要注意的一些重要要点。
我们在请求中发送的包含数据库名称和文档ID的网址。
更新现有文档与更新整个文档相同。 您无法向现有文档中添加字段。 您只能使用相同的文档ID将新版本的文档写入数据库。
我们必须提供修订号作为JSON请求的一部分。
作为回报,JSON包含成功消息,正在更新的文档的ID和新的修订版本信息。 如果要更新文档的新版本,则必须引用此最新版本号。

使用Futon更新文档

要删除文档,请打开http://127.0.0.1:5984/_utils/ url以获取CouchDB的Overview / index页面,如下所示。

创建文档

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

更新文档

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

文档内容

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

保存更改

CouchDB 创建文档
CouchDB 删除文档
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }