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的概述/索引頁面,如下所示。

Create Document

選擇要在其中建立文件的資料庫。開啟資料庫的概述頁面,然後選擇新建文件選項,如下所示。

New Document

選擇新建文件選項時,CouchDB會建立一個新的資料庫文件,併為其分配一個新的ID。您可以編輯ID的值,並可以將其值賦予字串形式。在下圖中,我們建立了一個ID為001的新文件。

New Document ID

在此頁面中,您可以看到三個選項:儲存文件、新增欄位和上傳附件。

向文件新增欄位

要向文件新增欄位,請單擊新增欄位選項。建立資料庫後,您可以使用此選項向其新增欄位。單擊它將獲得一對文字框,即欄位、值。您可以透過單擊它們來編輯這些值。編輯這些值並鍵入所需的欄位-值對。單擊綠色按鈕儲存這些值。

在下圖中,我們建立了員工的三個欄位:姓名、年齡和職位。

Create Field

儲存文件

您可以透過單擊此選項儲存對文件所做的更改。儲存後,將生成一個新的ID _rev,如下所示。

Save Document
廣告
© . All rights reserved.