mongodb 對 schema 設(shè)計好后,已經(jīng)正常運行一段時間了(已經(jīng)有數(shù)據(jù)), 后面調(diào)整 schema 的時候,比如,增加一個字段,減少一個字段,這個原數(shù)據(jù)怎么處理,是要先洗一遍數(shù)據(jù)嗎。 還是。。。
2 回答

楊__羊羊
TA貢獻1943條經(jīng)驗 獲得超7個贊
在schema
設(shè)計好后
如果要增加字段,執(zhí)行mongo命令:db.yourtable.update({}, {$set: {addField:""}}, false,true)
如果要刪除字段,執(zhí)行mongo命令:`db.yourtable.update({}, {$unset: {deleteField:""}}, false,true)
注:如果表的數(shù)據(jù)量過大, 可以考慮在query
處加些過濾條件,以達到分批執(zhí)行的效果。

函數(shù)式編程
TA貢獻1807條經(jīng)驗 獲得超9個贊
原來的數(shù)據(jù)還在啊,你想一個個的刪除也行;一個個修改也行;如果數(shù)據(jù)龐大,就直接做錯誤兼容處理,少了。字段的表要特別處理。
最好的當然是做到和schema一致,因此最好替換所有數(shù)據(jù)
- 2 回答
- 0 關(guān)注
- 1268 瀏覽
添加回答
舉報
0/150
提交
取消