在CouchDB中,通过使用cURL实用程序向服务器发送HTTP DELETE方法请求来删除文档。
语法
curl -H 'Content-Type: application/json' -X DELETE http://127.0.0.1:5984/database_name/database_id?_rev |
注意:
-X
用于指定与HTTP服务器通信时使用的HTTP的自定义请求方法。 要删除文档,可通过/database_name/database_id/
这个url传递最近的修订版本号。“?
” 用于指定数据结构的属性。
例子:
在数据库“web3_db
”中,有一个id
为10010
的文档,假设现在要删除这个文档,首先使用以下命令获取这个文档的rev_id
值:
web3@ubuntu:~$ curl -X GET http://127.0.0.1:5984/web3_db/10010 |
{"_id":"10010","_rev":"3-592bfcd696098263c19dfe761bf92929","age":"22","name":"Maxsu"} |
web3@ubuntu:~$ |
这里_rev
是“3-592bfcd696098263c19dfe761bf92929
”。现在使用以下命令删除id
为10010
的文档。
web3@ubuntu:~$ curl -H 'Content-Type: application/json' -X DELETE http://127.0.0.1:5984/web3_db/10010?rev=3-592bfcd696098263c19dfe761bf92929 |
{"ok":true,"id":"10010","rev":"4-a21004c06af1cf39634e552547b79e81"} |
web3@ubuntu:~$ curl -X GET http://127.0.0.1:5984/web3_db/10010 |
{"error":"not_found","reason":"deleted"} |
web3@ubuntu:~$ |
CouchDB对上面的删除命令的响应包含3
个字段:
id
。
_rev
值。 如果要更新或删除文档,CouchDB需要您包含要更改的修订版本的_rev
字段。 当CouchDB接受更改时,它将生成一个新的修订版本号。
验证
可以使用以下命令验证文档是否被删除:
web3@ubuntu:~$ curl -X GET http://127.0.0.1:5984/web3_db/10010 |
{"error":"not_found","reason":"deleted"} |
web3@ubuntu:~$ |