MongoDB\Driver\Server::executeReadCommand
En esta página
MongoDB\Driver\Server::executeReadCommand
Ejecuta un comando de base de datos que lee en este servidor
Descripción#
php
final public MongoDB\Driver\Server::executeReadCommand(string $db, MongoDB\Driver\Command $command, [array $options]): MongoDB\Driver\Cursorphp
Ejecuta el comando en este servidor, independientemente de la opción "readPreference".
Este método aplicará una lógica específica a los comandos de lectura (por ejemplo distinct). Los valores por omisión para las opciones "readPreference" y "readConcern" serán deducidos de una transacción activa (indicada por la opción "session"), seguida de la URI de conexión.
[!NOTE] La opción
"readPreference"no controla el servidor hacia el cual el controlador emite la operación; siempre se ejecutará en este objeto servidor. En su lugar, puede ser utilizado al emitir la operación a un secundario (desde una conexión de conjunto de réplicas, no autónoma) o el nodo Mongos para asegurarse de que el controlador defina el protocolo de fila en consecuencia o añada la preferencia de lectura a la operación, respectivamente.
Parámetros#
db (string)
El nombre de la base de datos sobre la cual se ejecutará el comando.
command (MongoDB\Driver\Command)
El comando a ejecutar.
options
| Opción | Tipo | Descripción |
|---|---|---|
| readConcern | MongoDB\Driver\ReadConcern |
Una preocupación de lectura a aplicar a la operación. Esta opción está disponible en MongoDB 3.2+ y se traducirá en una excepción en el momento de la ejecución si se especifica para una versión más antigua del servidor. |
| readPreference | MongoDB\Driver\ReadPreference |
Una preferencia de lectura a utilizar para seleccionar un servidor para la operación. |
| session | MongoDB\Driver\Session |
Una sesión a asociar a la operación. |
[!WARNING] Si se utiliza una
"session"que tiene una transacción en curso, no se puede especificar la opción"readConcern"o"writeConcern". Intentar hacer esto lanzará una excepciónMongoDB\Driver\Exception\InvalidArgumentException. En su lugar, debe definir estas opciones cuando se crea la transacción con MongoDB\Driver\Session::startTransaction.
Valores devueltos#
Retorna un MongoDB\Driver\Cursor en caso de éxito.
Errores/Excepciones#
Lanza una excepción
MongoDB\Driver\Exception\InvalidArgumentException
si la opción
"session"
se utiliza con una transacción asociada en combinación con una opción
"readConcern"
o
"writeConcern"
.
Lanza una excepción
MongoDB\Driver\Exception\InvalidArgumentException
en caso de error durante el análisis de un argumento.
Lanza una excepción
MongoDB\Driver\Exception\ConnectionException
si la conexión al servidor falla por una razón distinta a un problema de identificación
Lanza una excepción
MongoDB\Driver\Exception\AuthenticationException
si se requiere una identificación pero falla
Lanza una
MongoDB\Driver\Exception\RuntimeException
en caso de otros errores (por ejemplo: comando inválido).
Véase también#
MongoDB\Driver\Command
MongoDB\Driver\Cursor
MongoDB\Driver\Server::executeCommand
MongoDB\Driver\Server::executeReadWriteCommand
MongoDB\Driver\Server::executeWriteCommand
MongoDB\Driver\Manager::executeReadCommand