CouchDB 创建文档
文档是CouchDB的中央数据结构。 数据库的内容将以Documents的形式而不是表的形式存储。 您可以使用CouchDB提供的cURL实用程序以及Futon创建这些文档。 本章介绍在数据库中创建文档的方法。CouchDB中的每个文档都有唯一的ID。 您可以选择自己的ID,它应该是字符串的形式。 通常,使用UUID(通用唯一标识符),其是具有创建副本的最小机会的随机数。 优选这些以避免碰撞。
使用cURL实用程序创建文档
您可以通过使用PUT方法通过cURL实用程序向服务器发送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请求发送数据/文档。 在写文档时,只需输入您的Field-Value对,以冒号分隔,在花括号中如下所示。
- {
- 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的概述/索引页面,如下所示。
选择您要创建的文档数据库。打开数据库的总览页面,选择New Document选项,如下图所示。
当您选择新建文档选项,CouchDB中创建一个新的数据库文件,分配给它一个新的ID。您可以编辑id的值,可以在一个字符串的形式指定自己的价值。在下图中,我们已经创建了一个新的文档带有ID 001。
在此页面中,您可以观察三个选项 - 保存文档,添加字段和上传附件。
将字段添加到文档
要向文档添加字段,请单击添加字段选项。 创建数据库后,可以使用此选项向其中添加字段。 点击它会得到一对文本框,即Field,value。 您可以通过单击它们来编辑这些值。 编辑这些值,然后键入所需的字段值对。 点击绿色按钮保存这些值。在下图中,我们创建了三个字段Name,age和,员工的指定。
保存文档
您可以保存通过点击此选项对文档所做的更改。保存后,一个新的id _rev将如下所示生成。