在本篇文章中,我們來學習如何編輯/修改 CouchDB 資料庫中的文件。編輯/修改 CouchDB 資料庫中的文件有兩種方法,下面分別來看看如何操作。
開啟Fauxton url:http://127.0.0.1:5984/_utils
在建立文件後,還可以更新/更改/編輯文件。首先打資料庫概覽,裡邊有文件列表,如下表所示 -
點選想要修改的文件,例如點選ID
為10010
這一條文件資訊,進入文件詳細頁面 -
雙擊要修改的資料項,如上圖中,修改age
欄位的值,出現可編輯的輸入框後填寫修改的資料資訊,然後點後面的綠色「勾」圖示儲存新填入的資料,然後再點選左上角的「Save Document」即可。
cURL方便使用者通過cURL工具,向伺服器傳送HTTP PUT方法請求來更新CouchDB中的文件。
語法
curl -X PUT http://localhost:5984/database_name/document_id/ -d '{ "field" : "value", "_rev" : "revision id" }'
例子:
在資料庫yiibai_db
中有一個id
為10010
的文件。
首先,檢索要更新的文件的修訂版本號。可以使用以下命令在文件中找到文件的_rev
:
yiibai@ubuntu:~$ curl -X GET http://127.0.0.1:5984/yiibai_db/10010
{"_id":"10010","_rev":"2-b4aa165c0e34ec08581e7dc9f85ec454","name":"minsu","age":28,"address":"No. 112 ZhongShangRoad GuangZhou"}
yiibai@ubuntu:~$
從上面獲得的文件的修訂版本號_rev
來更改資料。 在這裡,假設要將年齡從28
歲改為22
歲,名稱修改為:Maxsu
,那麼可以使用如下請求命令 -
curl -H 'Content-Type: application/json' -X PUT http://127.0.0.1:5984/yiibai_db/10010/ -d'{"age": "22","name":"Maxsu", "_rev":"2-b4aa165c0e34ec08581e7dc9f85ec454"}'
執行結果如下所示 -
yiibai@ubuntu:~$ curl -H 'Content-Type: application/json' -X PUT http://127.0.0.1:5984/yiibai_db/10010/ -d'{"age": "22","name":"Maxsu", "_rev":"2-b4aa165c0e34ec08581e7dc9f85ec454"}'
{"ok":true,"id":"10010","rev":"3-592bfcd696098263c19dfe761bf92929"}
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:~$
可以看到上面返回的資料已經是修改過的資料了。
在更新文件時要記住的要點:
_rev
)用作JSON請求的一部分。