MongoDB\Driver\Manager::executeReadWriteCommand

(mongodb >=1.4.0)

MongoDB\Driver\Manager::executeReadWriteCommand — Exécute une commande de base de données qui lit et écrit

Description

final public function MongoDB\Driver\Manager::executeReadWriteCommand(string $db, MongoDB\Driver\Command $command, ?array $options = null): MongoDB\Driver\Cursor

Exécute une commande sur le serveur primaire.

Cette méthode appliquera une logique spécifique aux commandes qui lisent et écrivent (par exemple » aggregate). Les valeurs par défaut des options "readConcern" et "writeConcern" seront déduites à partir d'une transaction active (indiquée par l'option "session"), suivie de l' URI de connexion.

Liste de paramètres

db (string)

Le nom de la base de données sur laquelle la commande sera exécutée.

command (MongoDB\Driver\Command)

La commande à exécuter.

options

options
Option Type Description
readConcern MongoDB\Driver\ReadConcern Une préoccupation de lecture à appliquer à l'opération. Cette option est disponible dans MongoDB 3.2+ et se traduira par une exception au moment de l'exécution si elle est spécifiée pour une version plus ancienne du serveur.
session MongoDB\Driver\Session Une session à associer à l'opération.
writeConcern MongoDB\Driver\WriteConcern Une préoccupation d'écriture à appliquer à l'opération.

Avertissement

Si une "session" qui a une transaction en cours est utilisée, il n'est pas possible de spécifier l'option "readConcern" ou "writeConcern". Tenter de faire ceci lancera une exception MongoDB\Driver\Exception\InvalidArgumentException. À la place, il est recommandé de définir ces deux options lors de la création de la transaction avec MongoDB\Driver\Session::startTransaction().

Valeurs de retour

Retourne un MongoDB\Driver\Cursor en cas de succès.

Erreurs / Exceptions

Historique

Version Description
PECL mongodb 1.4.4 Une MongoDB\Driver\Exception\InvalidArgumentException sera lancée si l'option "session" est utilisée en combinaison avec un critère de lecture ou d'écriture non reconnu.

Voir aussi