mongodb 调整了schema 后,原来的数据怎么处理?

mongodb 对 schema 设计好后,已经正常运行一段时间了(已经有数据), 后面调整 schema 的时候,比如,增加一个字段,减少一个字段,这个原数据怎么处理,是要先洗一遍数据吗。 还是。。。

阅读 3.4k
2 个回答

schema设计好后
如果要增加字段,执行mongo命令:db.yourtable.update({}, {$set: {addField:""}}, false,true)
如果要删除字段,执行mongo命令:`db.yourtable.update({}, {$unset: {deleteField:""}}, false,true)

注:如果表的数据量过大, 可以考虑在query处加些过滤条件,以达到分批执行的效果。

原来的数据还在啊,你想一个个的删除也行;一个个修改也行;如果数据庞大,就直接做错误兼容处理,少了。字段的表要特别处理。
最好的当然是做到和schema一致,因此最好替换所有数据

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题