在CouchDB中,數(shù)據(jù)庫(kù)的數(shù)據(jù)以文檔的形式而不是表格存儲(chǔ)。
要在CouchDB數(shù)據(jù)庫(kù)中創(chuàng)建文檔,請(qǐng)打開(kāi)Fauxton url:
http://localhost:5984/_utils/
選擇特定的數(shù)據(jù)庫(kù),假設(shè)在數(shù)據(jù)庫(kù):yiibai_db上創(chuàng)建文檔,先點(diǎn)擊yiibai_db數(shù)據(jù)庫(kù)鏈接進(jìn)入數(shù)據(jù)概覽。 點(diǎn)擊新文檔(New Document),如下圖所示:

然后就會(huì)打開(kāi)一個(gè)頁(yè)面,默認(rèn)只有一個(gè)字段:_id,但是可以通點(diǎn)擊”Add Field“來(lái)新增更多的字段:

填入所有數(shù)據(jù)項(xiàng)后,單擊保存更改選項(xiàng)卡。現(xiàn)在就成功創(chuàng)建文檔。

創(chuàng)建一個(gè)文檔成功后,詳細(xì)信息如下所示 -

要在CouchDB中創(chuàng)建文檔,也可以通過(guò)cURL實(shí)用程序向服務(wù)器發(fā)送HTTP PUT方法請(qǐng)求。
以下是創(chuàng)建文檔的語(yǔ)法。
語(yǔ)法:
curl -X PUT http://localhost:5984/database_name/"id" -d ' { document} '
注意:
-X用于指定與HTTP服務(wù)器進(jìn)行通信的HTTP的自定義請(qǐng)求方法。 在這種情況下使用的是PUT方法。當(dāng)使用PUT方法時(shí),HTTP請(qǐng)求指定url的內(nèi)容是用來(lái)創(chuàng)建對(duì)象名稱。
database_name指定要在其中創(chuàng)建文檔的數(shù)據(jù)庫(kù)的名稱。id用來(lái)指定文檔ID。-d選項(xiàng)用于通過(guò)HTTP請(qǐng)求發(fā)送數(shù)據(jù)/文檔。{
name : minsu
age : 24
address : No. 112 ZhongShangRoad GuangZhou
}
示例:
在數(shù)據(jù)庫(kù)yiibai_db中,創(chuàng)建一個(gè)id為“10010”的文檔。
curl -H 'Content-Type: application/json' -X PUT http://localhost:5984/yiibai_db/"10010" -d'{"name":"minsu", "age":"24" , "address" : "No. 112 ZhongShangRoad GuangZhou" }'
執(zhí)行結(jié)果如下 -
yiibai@ubuntu:~$ curl -H 'Content-Type: application/json' -X PUT http://localhost:5984/yiibai_db/"10010" -d'{"name":"minsu", "age":"24" , "address" : "No. 112 ZhongShangRoad GuangZhou" }'
{"ok":true,"id":"10010","rev":"1-384d2bc91a881c6f9509b974573707bb"}
yiibai@ubuntu:~$
CouchDB對(duì)上面創(chuàng)建命令的響應(yīng)包含3個(gè)字段:
_rev值。 如果要更新或刪除文檔,CouchDB希望您包含要更改的修訂版本的_rev字段。 當(dāng)CouchDB接受更改時(shí),它將生成一個(gè)新的修訂版本號(hào)。驗(yàn)證:
可以使用以下命令驗(yàn)證文檔是否已創(chuàng)建:
curl -X GET http://localhost:5984/yiibai_db/10010
執(zhí)行上面命令,得到以下結(jié)果 -
yiibai@ubuntu:~$ curl -X GET http://localhost:5984/yiibai_db/10010
{"_id":"10010","_rev":"1-384d2bc91a881c6f9509b974573707bb","name":"minsu","age":"24","address":"No. 112 ZhongShangRoad GuangZhou"}
yiibai@ubuntu:~$