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

Eksempel på en transaktion i MongoDB 4.0 ved hjælp af PHP

Hvis du bruger PHP-biblioteket, der omslutter driveren, efter at du har oprettet en forekomst af Client for eksempel. kaldet $client , kan du gøre følgende:

$session = $client->startSession();
$session->startTransaction();
try {
    // Perform actions.
    $session->commitTransaction();
} catch(Exception $e) {
    $session->abortTransaction();
}

Desværre kunne jeg ikke finde nogen relevant dokumentation i PHP-biblioteksreferencen efter en overfladisk søgning, men jeg fandt eksempler i PHP-bibliotekets problemer som tyder på, at oprettelse af en session fra klienten og brug af denne session til at starte og derefter enten begå eller afbryde transaktionen er den passende procedure.

Et par ting at være opmærksom på, dog:

Hvis du ser MongoDB-dokumenterne (som linket ovenfor), vil du bemærke, at kravet om, at et replikasæt skal være i brug, ikke vises særlig fremtrædende, idet det er under den tredje overskrift og kommer efter al eksempelkoden (som, hvis du er noget som mig, vil det være den første ting du leder efter).



  1. Spring RedisTemplate :Serialiser flere modelklasser til JSON. Skal du bruge flere RedisTemplates?

  2. MongoDB $toBool

  3. Find nøgle efter værdi

  4. Sådan defineres objekt i array i Mongoose-skema korrekt med 2d geo-indeks