我正在更新集合:
conn->update("mycollection", BSON("_id" << ID), BSON("$set" << BSON("myfiled" << myvalue)));
有没有办法知道该集合是否真的更新过?函数“update”无效,并且没有抛出任何异常。 即使没有数据写入db,函数GetLastError也返回空字符串。
答案 0 :(得分:1)
来自MongoDB文档:
写关注描述了MongoDB何时提供的保证 报告写操作的成功。的力量 写关注确定保证水平。插入时,更新 和删除有一个弱的写入问题,写操作返回 很快。在某些故障情况下,写操作发布弱 写问题可能不会持续存在。随着写作问题的加强,客户 在发送MongoDB的写操作以确认写入后等待 操作
我没有使用C ++驱动程序,但在Java驱动程序中有一个WriteConcern类,可以让您控制操作。您可以在C ++驱动程序中检查等效类。
有关Write Concern的更多信息,请查看here。