亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在使用 MongoDB-mgo 插入許多文檔時忽略重復鍵錯誤并繼續插入?

如何在使用 MongoDB-mgo 插入許多文檔時忽略重復鍵錯誤并繼續插入?

Go
慕蓋茨4494581 2022-05-18 16:12:58
當我使用 insert(docs...) 插入多個文檔時,如果文檔列表中存在文檔中的一個重復鍵,則操作失敗并且無法插入文檔。我怎樣才能忽略這個錯誤,所以可以成功插入所有文件,但不能插入重復文件。
查看完整描述

1 回答

?
幕布斯7119047

TA貢獻1794條經驗 獲得超8個贊

默認情況下,當您使用 MongoDB.insertMany()或類似工具插入文檔時{ ordered: true },如果在文檔數組中插入文檔時出現錯誤,則整個操作將失敗,因為不插入該特定文檔并在該文檔之后休息其他文檔。因此,要使此過程無序,您需要將選項傳遞給.insertMany()is { ordered: false }。

參考: MongoDB-insertMany-Unordered-inserts

所以當涉及到mgo驅動時,你可能需要使用func (b *Bulk) Unordered().

Ref : mgo-無序

注意:您最好的選擇是檢查為什么發生重復鍵錯誤以及如果您在數據庫上有多個唯一鍵約束并更正文檔或字段上的唯一索引,而不是從插入中跳過文檔,則哪個鍵導致此問題.


查看完整回答
反對 回復 2022-05-18
  • 1 回答
  • 0 關注
  • 215 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號