sql >> Database >  >> NoSQL >> MongoDB

Voorbeeld van een transactie in MongoDB 4.0 met PHP

Als u de PHP-bibliotheek gebruikt die de driver omhult, na het maken van een instantie van Client bijv. genaamd $client , kunt u het volgende doen:

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

Helaas kon ik geen relevante documentatie vinden in de PHP-bibliotheekreferentie na een vluchtige zoekopdracht, maar ik vond voorbeelden in de problemen met de PHP-bibliotheek die suggereren dat het creëren van een sessie van de klant en het gebruiken van die sessie om de transactie te starten en vervolgens de transactie vast te leggen of af te breken, de juiste procedure is.

Er zijn echter een paar dingen waar u op moet letten:

Als u de MongoDB-documenten bekijkt (zoals hierboven gelinkt), ziet u dat de vereiste voor een replicaset om in gebruik te zijn niet bijzonder prominent wordt weergegeven, onder de derde kop staat en na alle voorbeeldcode komt (die, als je op mij lijkt, zal het eerste zijn waar je naar zoekt).



  1. Verslechterende prestaties van mongoldb-documentupdates naarmate het record groeit

  2. MongoDB $dayOfMonth

  3. Geen toegang tot verzameling vanuit de shell - SyntaxError:missing; voor statement (shell)::1

  4. Beste MongoDB-schema voor Twitter-kloon?