2013-10-11 2 views
1

Я обновляю коллекцию:Update результат хотел

conn->update("mycollection", BSON("_id" << ID), BSON("$set" << BSON("myfiled" << myvalue))); 

Есть ли способ узнать, если коллекция действительно обновляется или нет? Функция «update» недействительна, и исключение не было выбрано. Функция GetLastError возвращает пустую строку, даже если данные не были записаны в db.

+0

Можете ли вы рассказать нам, от чего связана библиотека? Мы не можем вам помочь, если мы не знаем подробностей о функциях, которые вы используете. –

+0

conn - стандартный mongo :: DBClientConnection * – Topor

ответ

1

Из MongoDB документации:

Написать беспокойство описывает гарантию того, что MongoDB обеспечивает при отчетов о успехе операции записи. Сила проблемы записи определяет уровень гарантии. Когда вставки, обновления и удалены, имеют слабое отношение к записи, операции записи возвращают быстро. В некоторых случаях сбоя операции записи, выданные со слабым , могут быть опасны для записи. С более сильными проблемами с записью клиенты ждут после отправки операции записи для MongoDB для подтверждения операций записи .

Я не использовал драйвер C++, но в Java-драйвере есть класс WriteConcern, который позволяет вам управлять операцией. Вы можете проверить эквивалентный класс в C++-драйвере.

Подробнее о регистрации концерна here.

Смежные вопросы