(mongodb >=1.4.0)
MongoDB\Driver\Manager::executeReadCommand — Ejecuta un comando de base de datos que lee
$db
, MongoDB\Driver\Command $command
, ?array $options
= null
): MongoDB\Driver\Cursor
Selecciona un servidor en función de la opción "readPreference"
y ejecuta el comando en este servidor.
Este método aplicará una lógica específica a los comandos que leen (por ejemplo
» distinct).
Los valores por omisión de las opciones "readPreference"
y
"readConcern"
serán deducidos a partir de una transacción activa
(indicada por la opción "session"
), seguida de la
URI de conexión.
db
(string)El nombre de la base de datos en la que ejecutar el comando.
command
(MongoDB\Driver\Command)El comando a ejecutar.
options
Option | Type | Description |
---|---|---|
readConcern | MongoDB\Driver\ReadConcern |
Un asunto de escritura a aplicar a la operación. Esta opción está disponible en MongoDB 3.2+ y resultará en una excepción en tiempo de ejecución si es especificada para una versión de servidor más antigua. |
readPreference | MongoDB\Driver\ReadPreference |
Una preferencia de lectura a usar para seleccionar un servidor para la operación. |
session | MongoDB\Driver\Session |
Una sesión a asociar con la operación. |
Si se usa la opción "session"
con sesión que tenga una transacción
en progreso, no se puede especificar una opción "readConcern"
o
"writeConcern"
. Esto resultarña en una
MongoDB\Driver\Exception\InvalidArgumentException.
En su lugar se debería establecer estas dos opciones al crear
la transacción con
MongoDB\Driver\Session::startTransaction().
Devuelve un MongoDB\Driver\Cursor en caso de éxito.
"session"
se usa con una transacción asociada junto a la opción "readConcern"
o "writeConcern"
option.