mongoDB: 无法更新所有集合中的列名更改

13 浏览
0 Comments

mongoDB: 无法更新所有集合中的列名更改

我尝试在Node.js中执行以下示例代码:

await PRODUCT.update(
    {},
    { $rename: { "product_code": "group_code" } }, false, true
  )
    .then((data) => {
      return res.status(200).json(data)
    })
    .catch((error) => {
      res.status(400).json({ error: error, message: '无法更新' })
    })

但是我收到的响应是更新失败的:

{

"acknowledged": false

}

0
0 Comments

问题原因:在运行重命名字段名的命令之前,确保没有从模式中删除旧字段。只有在运行命令并且检查数据库发现更改已生效后,才能从模式中删除旧字段。

解决方法:先运行重命名字段名的命令,然后检查数据库是否已经更新。如果更新成功,再从模式中删除旧字段。否则,删除操作无效。这是解决该问题的方法。

0