Exécute une commande de base de données qui lit sur ce serveur

# MongoDB\Driver\Server::executeReadCommand

(mongodb >=1.4.0)

MongoDB\Driver\Server::executeReadCommand — Exécute une commande de base de données qui lit sur ce serveur

### Description

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

Exécute la commande sur ce serveur, indépendamment de l'option `"readPreference"`.

Cette méthode appliquera une logique spécifique aux commandes de lecture (par exemple » distinct). Les valeurs par défaut pour les options `"readPreference"` et `"readConcern"` seront déduites d'une transaction active (indiquée par l'option `"session"`), suivie de l' URI de connexion.

> Note: L'option `readPreference` ne contrôle pas le serveur vers lequel le pilote émet l'opération; il sera toujours exécuté sur cet objet serveur. Au lieu de cela, il peut être utilisé lors de l'émission de l'opération à un secondaire (à partir d'une connexion de jeu de répliques, pas autonome) ou le nœud Mongos pour s'assurer que le pilote définit le protocole de fil en conséquence ou ajoute la préférence de lecture à l'opération, respectivement.

### 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.
  readPreference | MongoDB\Driver\ReadPreference | Une préférence de lecture à utiliser pour sélectionner un serveur pour l'opération.
  session | MongoDB\Driver\Session | Une session à associer à l'opération.

  Avertissement

  Si vous utilisez une `"session"` qui a une transaction en cours, vous ne pouvez pas spécifier l'option `"readConcern"` ou `"writeConcern"`. Tenter de faire ceci lancera une exception MongoDB\Driver\Exception\InvalidArgumentException. À la place vous devriez définir ces options quand vous créez la transaction avec MongoDB\Driver\Session::startTransaction().

### Valeurs de retour

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

### Erreurs / Exceptions

- Throws MongoDB\Driver\Exception\InvalidArgumentException if the `"session"` option is used with an associated transaction in combination with a `"readConcern"` or `"writeConcern"` option.
- Lance une exception MongoDB\Driver\AuthenticationException si une identification est nécessaire mais qu'elle échoue
- Lance une exception MongoDB\Driver\ConnectionException si la connexion au serveur échoue pour une autre raison qu'en raison d'un problème d'identification
- Lance une MongoDB\Driver\Exception\RuntimeException sur d'autres erreurs (par exemple: commande invalide).

### Voir aussi

- MongoDB\Driver\Command
- MongoDB\Driver\Cursor
- MongoDB\Driver\Server::executeCommand() - Exécute une commande de base de données sur ce serveur
- MongoDB\Driver\Server::executeReadWriteCommand() - Exécute une commande de base de données qui lit et écrit sur ce serveur
- MongoDB\Driver\Server::executeWriteCommand() - Exécute une commande de base de données qui écrit sur ce serveur
- MongoDB\Driver\Manager::executeReadCommand() - Exécute une commande de base de données qui lit

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open