CouchDB使用Fauxton、cURL工具删除文档

2019年8月18日08:28:54 发表评论 63 views

学习如何删除 CouchDB 数据库中的文档。删除 CouchDB 数据库中的文档有两种方法,下面分别来看看如何操作。

CouchDB使用Fauxton删除文档

打开Fauxton url:

http://127.0.0.1:5984/_utils/

首先选择包含所有文档的数据库。这里是数据库“yiibai_db”中的所有三个文件:

CouchDB使用Fauxton、cURL工具删除文档

选择要删除的文档,假设要删除ID为001的文档,那么就点击ID为001的这个文档进入详细信息,如下所示 -

CouchDB使用Fauxton、cURL工具删除文档

在ID为001的这个文档进入详细信息页面中,点击“Delete Document…”来删除当前这条信息,如下所示 -

CouchDB使用Fauxton、cURL工具删除文档

点击“Delete”确认删除就好。如下图中所示,ID为001的这个文档已经被删除了 -

CouchDB使用Fauxton、cURL工具删除文档

2. CouchDB使用cURL工具删除文档

在CouchDB中,通过使用cURL实用程序向服务器发送HTTP DELETE方法请求来删除文档。

语法

curl -H 'Content-Type: application/json' -X DELETE http://127.0.0.1:5984/database_name/database_id?_rev
Shell

注意:-X用于指定与HTTP服务器通信时使用的HTTP的自定义请求方法。 要删除文档,可通过/database_name/database_id/这个url传递最近的修订版本号。“” 用于指定数据结构的属性。

例子:

在数据库“yiibai_db”中,有一个id10010的文档,假设现在要删除这个文档,首先使用以下命令获取这个文档的rev_id值:

yiibai@ubuntu:~$ curl -X GET http://127.0.0.1:5984/yiibai_db/10010
{"_id":"10010","_rev":"3-592bfcd696098263c19dfe761bf92929","age":"22","name":"Maxsu"}
yiibai@ubuntu:~$
Shell

这里_rev是“3-592bfcd696098263c19dfe761bf92929”。现在使用以下命令删除id10010的文档。

yiibai@ubuntu:~$ curl -H 'Content-Type: application/json' -X DELETE http://127.0.0.1:5984/yiibai_db/10010?rev=3-592bfcd696098263c19dfe761bf92929
{"ok":true,"id":"10010","rev":"4-a21004c06af1cf39634e552547b79e81"}
yiibai@ubuntu:~$ curl -X GET http://127.0.0.1:5984/yiibai_db/10010
{"error":"not_found","reason":"deleted"}
yiibai@ubuntu:~$
Shell

CouchDB对上面的删除命令的响应包含3个字段:

  • ok”:它表示操作成功。
  • id”:它存储文档的id
  • rev”:表示修订ID。 每次修改(更新,修改或删除)文档时,CouchDB将生成_rev值。 如果要更新或删除文档,CouchDB需要您包含要更改的修订版本的_rev字段。 当CouchDB接受更改时,它将生成一个新的修订版本号。

验证

可以使用以下命令验证文档是否被删除:

yiibai@ubuntu:~$ curl -X GET http://127.0.0.1:5984/yiibai_db/10010
{"error":"not_found","reason":"deleted"}
yiibai@ubuntu:~$

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: