sql >> Database teknologi >  >> NoSQL >> MongoDB

Pymongo får indsat id'er selv med duplikatnøglefejl

Desværre ikke på den måde, du har gjort det med de nuværende pymongo-drivere. Som du har fundet, hvis du får fejl i din insert_many() det vil give en undtagelse, og undtagelsesdetaljen indeholder ikke detaljer om inserted_id s.

Den indeholder detaljer om nøglerne til fejlen (i e.details['writeErrors'][]['keyValue'] ), så du kan prøve at arbejde baglæns fra din originale produktliste.

Din anden løsning er at bruge insert_one() i en løkke med et forsøg ... undtagen og tjek hver indsats. Jeg ved, at dette er mindre effektivt, men det er en løsning ...




  1. MongoDB $concat

  2. NoSql referencedata

  3. Bedste måde at læse og opdatere mongodb-dokumenter ved hjælp af pymongo

  4. Geografisk distribuerede MongoDB-replikasæt til 100 % oppetid