Учебники

12) Обновить () документ

Основные обновления документа

MongoDB предоставляет команду update () для обновления документов коллекции. Чтобы обновить только те документы, которые вы хотите обновить, вы можете добавить критерий в оператор обновления, чтобы обновлялись только выбранные документы.

Основные параметры в команде — это условие, для которого необходимо обновить документ, а следующее — это изменение, которое необходимо выполнить.

В следующем примере показано, как это можно сделать.

Шаг 1) Выполните команду обновления

Шаг 2) Выберите условие, которое вы хотите использовать, чтобы решить, какой документ необходимо обновить. В нашем примере мы хотим обновить документ с идентификатором сотрудника 22.

Шаг 3) Используйте команду set для изменения имени поля

Шаг 4) Выберите, какое имя поля вы хотите изменить, и соответственно введите новое значение.

db.Employee.update(
{"Employeeid" : 1},
{$set: { "EmployeeName" : "NewMartin"}});

Если команда выполнена успешно, будет показан следующий вывод

Вывод:

Обновление MongoDB () Документ

Выходные данные ясно показывают, что одна запись соответствует условию, и, следовательно, значение соответствующего поля было изменено.

Обновление нескольких значений

Чтобы обеспечить одновременное обновление нескольких / массовых документов в MongoDB, вам необходимо использовать опцию multi, так как в противном случае по умолчанию изменяется только один документ за один раз.

В следующем примере показано, как обновить много документов.

В этом примере мы сначала найдем документ с идентификатором сотрудника «1» и изменим имя сотрудника с «Martin» на «NewMartin»

Шаг 1) Выполните команду обновления

Шаг 2) Выберите условие, которое вы хотите использовать, чтобы решить, какой документ необходимо обновить. В нашем примере мы хотим, чтобы документ с идентификатором сотрудника «1» обновлялся.

Шаг 3) Выберите, какие имена полей вы хотите изменить, и введите их новое значение соответственно.

db.Employee.update
(
	{
		Employeeid : 1
	},
	{
		$set :
		{
			"EmployeeName" : "NewMartin",
			"Employeeid" : 22
		}
	}
)

Если команда выполнена успешно, и если вы запустите команду «find» для поиска документа с идентификатором сотрудника, равным 22, вы увидите следующее:

Вывод:

Обновление MongoDB () Документ

Выходные данные ясно показывают, что одна запись соответствует условию, и, следовательно, значение соответствующего поля было изменено.