我想寫一個函數來做一個批量保存到mongoDB使用pymongo,有沒有辦法呢?我已經嘗試過使用插入,它適用於新記錄,但它在重複上失敗。我需要使用保存但具有文檔集合的相同功能(它使用相同的_id替換已添加的文檔而不是失敗)。是否有一個pymongo(或另一個Python庫)批量保存?
在此先感謝!
我想寫一個函數來做一個批量保存到mongoDB使用pymongo,有沒有辦法呢?我已經嘗試過使用插入,它適用於新記錄,但它在重複上失敗。我需要使用保存但具有文檔集合的相同功能(它使用相同的_id替換已添加的文檔而不是失敗)。是否有一個pymongo(或另一個Python庫)批量保存?
在此先感謝!
,您可以使用批量插入與選項W = 0(如安全=假),但你應該做一個檢查,看看是否所有文件實際上是插入,如果這是重要的,你
不符合OP的要求 - 它仍然會在存在的文檔上失敗。真正的答案是「你不能通過多個文檔來保存」 – 2013-05-05 00:40:27
不,它不會失敗: 試試這個: yourClient.db.collection.insert([{'_ id':i} for i in range 0,100)],w = 0) ,然後第二次不會失敗 – nickmilon 2013-05-05 02:06:01
當然,它會失敗 - 這意味着新文檔不會保存在舊文檔的值上。 OP希望使用相同的_id替代已添加的文檔的功能不會默默無法替換它! – 2013-05-05 02:28:32
有你看了命令行工具,並發現他們想要? http://docs.mongodb.org/manual/core/import-export/ – hughdbrown 2013-05-04 23:16:17
我想你想問的問題是,如果在Mongo中存在批量保存,而不是專門針對pymongo? – 2013-05-05 18:37:43