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

Jak spustit příkaz mongo s ovladačem mongo-go-driver?

RunCommand je provést mongo příkaz. Máte v úmyslu najít všechny dokumenty sbírky, provést změny a poté je nahradit. Potřebujete Find() , kurzor a ReplaceOne() . Zde je podobný fragment kódu.

if cur, err = collection.Find(ctx, bson.M{"hometown": bson.M{"$exists": 1}}); err != nil {
    t.Fatal(err)
}
var doc bson.M
for cur.Next(ctx) {
    cur.Decode(&doc)
    doc["updated"] = time.Now()
    if result, err = collection.ReplaceOne(ctx, bson.M{"_id": doc["_id"]}, doc); err != nil {
        t.Fatal(err)
    }
    if result.MatchedCount != 1 || result.ModifiedCount != 1 {
        t.Fatal("replace failed, expected 1 but got", result.MatchedCount)
    }
}

Mám úplný příklad TestReplaceLoop()




  1. Ukládání objektů JSON do mezipaměti na straně serveru

  2. Vyvinout schéma databáze pro Notify jako facebook

  3. Neplatný příkaz přerušení (Node.js)

  4. Jak mohu přejmenovat sbírku v MongoDB?