Учебники

CouchDB — Создание документа

Документы являются центральной структурой данных CouchDB. Содержимое базы данных будет храниться в виде документов вместо таблиц. Вы можете создавать эти документы, используя утилиту cURL, предоставляемую CouchDB, а также Futon. В этой главе рассматриваются способы создания документа в базе данных.

Каждый документ в CouchDB имеет уникальный идентификатор. Вы можете выбрать свой собственный идентификатор, который должен быть в форме строки. Обычно используется UUID (универсальный уникальный идентификатор), который представляет собой случайные числа, которые имеют наименьшую вероятность создания дубликата. Они предпочтительнее, чтобы избежать столкновений.

Создание документа с использованием утилиты cURL

Вы можете создать документ в CouchDB, отправив HTTP-запрос на сервер, используя метод PUT через утилиту cURL. Ниже приведен синтаксис для создания документа.

$ curl -X PUT http://127.0.0.1:5984/database name/"id" -d ' { document} '

Используя -X , мы можем указать пользовательский метод запроса HTTP, который мы используем, при взаимодействии с HTTP-сервером. В этом случае мы используем метод PUT. Когда мы используем метод PUT, содержимое url указывает имя объекта, которое мы создаем с помощью HTTP-запроса. Здесь мы должны отправить следующее —

  • Имя базы данных, в которой мы создаем документ.

  • Идентификатор документа.

  • Данные документа. Опция -d используется для отправки данных / документа через HTTP-запрос. При написании документа просто введите пары полей-значений, разделенные двоеточием, в цветочных скобках, как показано ниже —

Имя базы данных, в которой мы создаем документ.

Идентификатор документа.

Данные документа. Опция -d используется для отправки данных / документа через HTTP-запрос. При написании документа просто введите пары полей-значений, разделенные двоеточием, в цветочных скобках, как показано ниже —

{
   Name : Raju
   age : 23
   Designation : Designer
}

пример

Используя приведенный выше синтаксис, если вы хотите создать документ с идентификатором 001 в базе данных с именем my_database , вы можете создать его, как показано ниже.

$ 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 на этот запрос содержит три поля:

  • «ОК», указывая, что операция прошла успешно.

  • «id», в котором хранится идентификатор документа и

  • «rev», это указывает на идентификатор ревизии. Каждый раз, когда вы редактируете (обновляете или модифицируете) документ, CouchDB генерирует значение _rev . Если вы хотите обновить или удалить документ, CouchDB ожидает, что вы включите поле _rev ревизии, которую вы хотите изменить. Когда CouchDB принимает изменение, оно генерирует новый номер редакции. Этот механизм обеспечивает контроль параллелизма.

«ОК», указывая, что операция прошла успешно.

«id», в котором хранится идентификатор документа и

«rev», это указывает на идентификатор ревизии. Каждый раз, когда вы редактируете (обновляете или модифицируете) документ, 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 создает новый документ базы данных, назначая ему новый идентификатор. Вы можете редактировать значение идентификатора и можете назначить свое собственное значение в виде строки. На следующем рисунке мы создали новый документ с идентификатором 001.

Новый документ ID

На этой странице вы можете наблюдать три варианта — сохранить документ, добавить поле и загрузить вложение.

Добавить поле в документ

Чтобы добавить поле в документ, нажмите « Добавить поле» . После создания базы данных вы можете добавить в нее поле, используя эту опцию. Нажав на нее, вы получите пару текстовых полей, а именно, поле, значение. Вы можете редактировать эти значения, нажимая на них. Отредактируйте эти значения и введите желаемую пару поле-значение. Нажмите на зеленую кнопку, чтобы сохранить эти значения.

На следующем рисунке мы создали три поля: Имя, Возраст и Назначение сотрудника.

Создать поле

Сохранить документ

Вы можете сохранить изменения, внесенные в документ, нажав на эту опцию. После сохранения будет создан новый идентификатор _rev , как показано ниже.