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

L'aggiornamento dei record in MongoDB tramite pymongo porta alla cancellazione della maggior parte di essi

La prima cosa da controllare è "c'erano eccezioni" ?

In coll.update() , non stai impostando il safe variabile. Se c'è un'eccezione sull'update , non verrà lanciato.

Nel tuo codice non catturi le eccezioni (cosa suggerita) e il tuo aggiornamento non verifica la presenza di eccezioni, quindi non hai modo di sapere cosa sta succedendo.

La seconda cosa da controllare è "come stai contando" ?

L'update il comando può "cancellare" i dati, ma non può eliminarli (o modificare un _id ).

Hai una copia dei dati originali? Puoi eseguire il tuo codice su un piccolo numero di quei 10 o 100 e vedere cosa sta succedendo?

Quello che descrivi non è normale con nessuno dei driver MongoDB . Abbiamo sicuramente bisogno di più dati per risolvere questo problema.