MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Przykład dla transakcji w mongodb z GoLang

To może być mylące. Poniżej znajduje się prosty przykład.

if session, err = client.StartSession(); err != nil {
    t.Fatal(err)
}
if err = session.StartTransaction(); err != nil {
    t.Fatal(err)
}
if err = mongo.WithSession(ctx, session, func(sc mongo.SessionContext) error {
    if result, err = collection.UpdateOne(sc, bson.M{"_id": id}, update); err != nil {
        t.Fatal(err)
    }
    if result.MatchedCount != 1 || result.ModifiedCount != 1 {
        t.Fatal("replace failed, expected 1 but got", result.MatchedCount)
    }

    if err = session.CommitTransaction(sc); err != nil {
        t.Fatal(err)
    }
    return nil
}); err != nil {
    t.Fatal(err)
}
session.EndSession(ctx)

Pełne przykłady możesz zobaczyć tutaj .



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Odpowiedz informacje o nagłówku i dodaj tablicę ekstraktu do tego samego wyniku

  2. NoSQL (MongoDB) vs Lucene (lub Solr) jako Twoja baza danych

  3. jak mogę automatycznie zwiększyć pole w mongodb za pomocą kodu java?

  4. MongoDb 2.6.1 Błąd:17444 — Starszy punkt jest poza zakresem zapytania sferycznego

  5. Różnica MongoDB między obiektem DateTime a ciągiem RRRR-MM-DD