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

MongoDB:indsæt dokumenter med specifikt id i stedet for autogenereret ObjectID

Til dit første problem har MongoDB upsert

db.collection.update(
   {query for id},
   {document},
   {upsert: true}
)

eller i Java-driveren

yourCollection.update(searchObject, modifiedObject, true, false);

Hvis du vil indstille et brugerdefineret ID, skal du blot indstille _id tasten manuelt, dvs.

yourBasicDBObject.put("_id",yourCustomId) 

du skal bare sikre dig, at det er unikt for hvert dokument.

Du skal også indstille _id i dit modifiedObject ellers vil en ny blive genereret.

Hvad angår masseoperationerne , skal du blot indstille et brugerdefineret ID for hvert dokument ved at give _id nøglen burde også virke.



  1. Er dette en sikker måde at indsætte og opdatere en række objekter i mongodb?

  2. MongoDB:Match flere array-elementer

  3. Find 15 minutters data med ObjectID-feltet

  4. bedste praksis for datasynkronisering i nodejs