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

Sådan upsert med mongodb-java-driver

Hvis du bruger mongo-java-driver 3 , efter .updateOne() metode med {upsert, true} flag virker.

 void setLastIndex(MongoClient mongo, Long id, Long lastIndexValue) {

    Bson filter = Filters.eq("_id", id);

    Bson update =  new Document("$set",
                  new Document()
                        .append("lastIndex", lastIndexValue)
                        .append("created", new Date()));
    UpdateOptions options = new UpdateOptions().upsert(true);

    mongo.getDatabase(EventStreamApp.EVENTS_DB)
         .getCollection(EventCursor.name)
         .updateOne(filter, update, options);
  }


  1. Hvordan opretter jeg et JSON-feed fra en MongoDB-samling

  2. Kan $isolated stoppe med at læse ændrede dokumenter i naturlig rækkefølge i en multiopdatering?

  3. $addFields, når der ikke blev fundet noget $match

  4. Sådan fjerner du alle elementer fra en MongoDB-samling