- CouchDB 教程
- CouchDB - 首頁
- CouchDB - 簡介
- CouchDB - 安裝
- CouchDB - Curl & Futon
- CouchDB - HTTP API
- CouchDB - 建立資料庫
- CouchDB - 刪除資料庫
- CouchDB - 建立文件
- CouchDB - 更新文件
- CouchDB - 刪除文件
- CouchDB - 附加檔案
- CouchDB 有用資源
- CouchDB - 快速指南
- CouchDB - 資源
- CouchDB - 討論
CouchDB - 建立文件
文件是CouchDB的核心資料結構。資料庫的內容將以文件的形式儲存,而不是表的形式。您可以使用CouchDB提供的cURL實用程式以及Futon來建立這些文件。本章介紹在資料庫中建立文件的方法。
CouchDB中的每個文件都有一個唯一的ID。您可以選擇您自己的ID,它應該是一個字串形式。通常使用UUID(Universally Unique IDentifier),它們是隨機數,建立重複的可能性最小。建議使用它們來避免衝突。
使用cURL實用程式建立文件
您可以透過使用cURL實用程式透過PUT方法向伺服器傳送HTTP請求來在CouchDB中建立文件。以下是建立文件的語法。
$ curl -X PUT http://127.0.0.1:5984/database name/"id" -d ' { document} '
使用−X,我們可以指定我們與HTTP伺服器通訊時使用的HTTP自定義請求方法。在本例中,我們使用PUT方法。當我們使用PUT方法時,url的內容指定了我們使用HTTP請求建立的物件名稱。這裡我們需要傳送以下內容:
我們要建立文件的資料庫名稱。
文件ID。
文件的資料。−d選項用於透過HTTP請求傳送資料/文件。編寫文件時,只需在花括號內輸入用冒號分隔的欄位-值對,如下所示:
{
Name : Raju
age : 23
Designation : Designer
}
示例
使用上面給出的語法,如果您想在名為my_database的資料庫中建立一個ID為001的文件,您可以按如下所示建立它。
$ curl -X PUT http://127.0.0.1:5984/my_database/"001" -d
'{ " Name " : " Raju " , " age " :" 23 " , " Designation " : " Designer " }'
{"ok":true,"id":"001","rev":"1-1c2fae390fa5475d9b809301bbf3f25e"}
CouchDB對此請求的響應包含三個欄位:
"ok",表示操作成功。
"id",儲存文件的ID,以及
"rev",這表示修訂ID。每次修改(更新或修改)文件時,CouchDB都會生成一個_rev值。如果您想更新或刪除文件,CouchDB希望您包含要更改的修訂版的_rev欄位。當CouchDB接受更改時,它將生成一個新的修訂號。此機制確保併發控制。
驗證
如果您想檢視已建立的文件,您可以使用如下所示的文件獲取它。
$ curl -X GET http://127.0.0.1:5984/my_database/001
{
"_id": "001",
"_rev": "1-3fcc78daac7a90803f0a5e383f4f1e1e",
"Name": "Raju",
"age": 23,
"Designation": "Designer"
}
使用Futon建立文件
要建立文件,請開啟http://127.0.0.1:5984/_utils/ url以獲取CouchDB的概述/索引頁面,如下所示。
選擇要在其中建立文件的資料庫。開啟資料庫的概述頁面,然後選擇新建文件選項,如下所示。
選擇新建文件選項時,CouchDB會建立一個新的資料庫文件,併為其分配一個新的ID。您可以編輯ID的值,並可以將其值賦予字串形式。在下圖中,我們建立了一個ID為001的新文件。
在此頁面中,您可以看到三個選項:儲存文件、新增欄位和上傳附件。
向文件新增欄位
要向文件新增欄位,請單擊新增欄位選項。建立資料庫後,您可以使用此選項向其新增欄位。單擊它將獲得一對文字框,即欄位、值。您可以透過單擊它們來編輯這些值。編輯這些值並鍵入所需的欄位-值對。單擊綠色按鈕儲存這些值。
在下圖中,我們建立了員工的三個欄位:姓名、年齡和職位。
儲存文件
您可以透過單擊此選項儲存對文件所做的更改。儲存後,將生成一個新的ID _rev,如下所示。