在我的程序中,通過更新(key,doc,upsert = true)寫入mongodb的十個過程mongodb更新(使用upsert = true)不更新存在數據,插入新數據?
「key」是mongodb索引,但不是唯一的。
查詢= { 'hotelid':hotelid, 「arrivedate」:arrivedate, 「leavedate」:leavedate}
其中= 「數據%S。」 %的SourceID
data_value_where = {其中:value}
self.collection.update(查詢,{ '$集':data_value_where},真)
「查詢」 的id不是唯一的指標
我發現有時更新不更新存在數據,但創建新數據。
我爲update方法返回一個日誌,返回值爲「{u'ok':1.0,u'err':None,u'upserted':ObjectId('5245378b4b184fbbbea3f790'),u'singleShard':u 'rs1/192.168.0.21:10000,192.168.1.191:10000,192.168.1.192:10000,192.168.1.41:10000,192.168.1.113:10000',u'connectionId':1894107,u'n':1,u'我更改了更新方法(query,{'$ set':data_value_where},upsert = True,safe = True),但是三個沒有改變對於這個問題。
誰降低了某人試圖提出一個合法的問題,但顯然有限的英語打字技巧?真丟臉。爲什麼不幫助句容重寫它,因此它更容易理解? –
@DanGayle謝謝 – chjuheng
我修改了這個問題,並在上面寫了一些日誌。感謝所有的重播。 – chjuheng