在执行带有multi:true选项的猫鼬更新命令时,如何获取数据库中受影响记录的ID?
class MYString
{
private:
char * m_ptr = nullptr;
int m_lg = 0;
...
这将返回受影响的文档数,但是如何在不运行数据库内部另一个查询的情况下知道它们的ID?
答案 0 :(得分:1)
带有或不带有multi: true
选项的更新操作将返回一个WriteResult
,它不具有包含此类详细信息的属性。只有各种计数。
当涉及到their documentation的猫鼬时,您只会在成功的回调中分别得到err
和rawResponse
:
回调函数接收(err,rawResponse)。
如果发生任何rawResponse是来自的完整响应,则err是错误 蒙哥
因此,您基本上从mongo获得了WriteResult
,仅此而已。
所以否,尽管您可以使用_id
更新中间件在其中运行{{1 }}更新的一部分,并将_id存储在我想进行审核的位置。