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

Příklad transakce v MongoDB 4.0 pomocí PHP

Pokud používáte knihovnu PHP, která obaluje ovladač, po vytvoření instance Client např. s názvem $client , můžete provést následující:

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

Bohužel jsem nemohl najít žádnou relevantní dokumentaci v referenčních knihách PHP po zběžném hledání jsem ale našel příklady v problémy knihovny PHP které naznačují, že vytvoření relace z klienta a použití této relace ke spuštění a následnému potvrzení nebo zrušení transakce je vhodný postup.

Je však třeba si uvědomit několik věcí:

Pokud si prohlédnete dokumenty MongoDB (jak je uvedeno výše), všimnete si, že požadavek na používání sady replik není nijak zvlášť nápadně zobrazen, nachází se pod třetím nadpisem a přichází po celém vzorovém kódu (který, pokud jste něco jako já, bude to první, co hledáte).



  1. vnořené dotazy v pymongo pomocí collection.find()

  2. Rails, Sidekiq - Redis NOAUTH

  3. jak předat proměnné $tid, $id do raw funkce?

  4. pomocí mongoose model.find() získáte všechny položky pouze z 1 pole