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

Sådan stopper du indsættelse af duplikerede dokumenter i en mongodb-samling

Brug ikke indsats.

Brug opdatering med upsert=true . Update vil lede efter det dokument, der matcher din forespørgsel, så vil den ændre de felter, du ønsker, og derefter kan du fortælle det upsert:True, hvis du vil indsætte, hvis intet dokument matcher din forespørgsel.

db.collection.update(
   <query>,
   <update>,
  {
    upsert: <boolean>,
     multi: <boolean>,
    writeConcern: <document>
   }
  )

Så for dit eksempel kan du bruge noget som dette:

db.collection.update(doc, doc, {upsert:true})


  1. Opret superbruger i mongo

  2. fagforening på samme samling i mongodb

  3. DbRef med Mongoose - mongoose-dbref eller befolke?

  4. redis store 128 bit nummer