(mongodb >=1.4.0)
MongoDB\Driver\Server::executeReadCommand — Выполняет команду базы данных, которая читает на сервере
$db
, MongoDB\Driver\Command $command
, ?array $options
= null
): MongoDB\Driver\CursorВыполняет команду на этом сервере.
Этот метод будет применять логику, специфичную для команд, которые читают (например,
» count)
и учитывают версию сервера MongoDB. Опция
"readConcern"
будет по умолчанию соответствовать соответствующему
значению из URI подключения MongoDB.
Замечание: Опция
"readPreference"
не контролирует сервер, к которому драйвер выполняет операцию; она всегда будет выполняться на этом объекте сервера. Вместо этого, он может быть использован при выполнении операции на втором узле (из набора реплик, не автономный) или на узле mongos для обеспечения того, что драйвер устанавливает проводной протокол соответствующим образом или добавляет предпочтение чтения к операции, соответственно.
db
(string)Имя базы данных, в которой запускается команда.
command
(MongoDB\Driver\Command)Команда для выполнения.
options
Опция | Тип | Описание |
---|---|---|
readConcern | MongoDB\Driver\ReadConcern |
Гарантия чтения для применения к операции. Эта опция доступна в MongoDB 3.2+ и приведёт к исключению во время выполнения, если указана для более старой версии сервера. |
readPreference | MongoDB\Driver\ReadPreference |
Предпочтение чтения, используемая для выбора сервера для выполнения операции. |
session | MongoDB\Driver\Session |
Сессия для связывания с операцией. |
При использовании "session"
и наличии незавершённых
транзакций, вы не можете указать "readConcern"
or
"writeConcern"
option. Это приведёт к выбрасыванию
исключения MongoDB\Driver\Exception\InvalidArgumentException.
Вместо этого вы должны установить эти две опции при создании транзакции с помощью
MongoDB\Driver\Session::startTransaction().
В случае успешного выполнения возвращает MongoDB\Driver\Cursor.
"session"
указана с соответствующей транзакцией в сочетании с опцией "readConcern"
или "writeConcern"
.