MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Exemple de transaction dans MongoDB 4.0 utilisant PHP

Si vous utilisez la bibliothèque PHP qui encapsule le pilote, après avoir créé une instance de Client par exemple. appelé $client , vous pouvez effectuer les opérations suivantes :

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

Malheureusement, je n'ai trouvé aucune documentation pertinente dans la référence de la bibliothèque PHP après une recherche rapide, mais j'ai trouvé des exemples dans les problèmes de la bibliothèque PHP qui suggèrent que la création d'une session à partir du client et l'utilisation de cette session pour démarrer puis valider ou abandonner la transaction est la procédure appropriée.

Quelques choses à savoir cependant :

Si vous consultez la documentation MongoDB (comme indiqué ci-dessus), vous remarquerez que l'exigence d'utilisation d'un jeu de réplicas n'est pas particulièrement visible, étant sous le troisième titre et venant après tout l'exemple de code (qui, si vous êtes comme moi, ce sera la première chose que vous chercherez).