sql >> Databáze >  >> NoSQL >> MongoDB

Jak upsert s mongodb-java-driver

Pokud používáte mongo-java ovladač 3 za .updateOne() metoda s {upsert, true} vlajka funguje.

 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. InsertMany nefunguje v mongodb

  2. Express MongoDB find() na základě pole _id

  3. MongoException:klíče nulové délky nejsou povoleny, použili jste $ s dvojitými uvozovkami?

  4. Integrace knihovny Flask-Mail a Redis Queue dává chybu