【发布时间】:2017-07-09 21:40:48
【问题描述】:
我想在 mongodb 中进行批量插入,但如果记录已经存在,则应将其替换为新记录。有更新命令,但无法批量执行。知道是否可能吗?我正在使用 java api。 谢谢
编辑: 由于我的集合大小不是很大,我正在重命名集合并将 drop Target 选项设置为 true 并使用此数据创建一个新集合。因为我不能冒险删除并创建一个新集合,所以这会更好,但如果有替换成等价物。
【问题讨论】:
我想在 mongodb 中进行批量插入,但如果记录已经存在,则应将其替换为新记录。有更新命令,但无法批量执行。知道是否可能吗?我正在使用 java api。 谢谢
编辑: 由于我的集合大小不是很大,我正在重命名集合并将 drop Target 选项设置为 true 并使用此数据创建一个新集合。因为我不能冒险删除并创建一个新集合,所以这会更好,但如果有替换成等价物。
【问题讨论】:
如果您的集合中有任何主键,那么它将自动替换。确保您的文档具有 _id 键。
【讨论】:
查看mongodb文档:
Shorthand for insert/update is save - if _id value set, the record is updated if it exists or inserted if it does not; if the _id value is not set, then the record is inserted as a new one.
在http://mongodb.github.io/node-mongodb-native/markdown-docs/insert.html
【讨论】: