(mongodb >=1.4.0)
MongoDB\Driver\Manager::executeReadCommand — 执行读取数据库命令
$db
, MongoDB\Driver\Command $command
, ?array $options
= null
): MongoDB\Driver\Cursor根据 "readPreference"
选项选择服务器,并在该服务器上执行命令。
此方法将应用特定于读取命令的逻辑(例如 » distinct)。"readPreference"
和 "readConcern"
选项的默认值将从活动事务(由 "session"
选项指示)推断,然后从 连接 URI 推断。
db
(string)要执行命令的数据库的名称。
command
(MongoDB\Driver\Command)要执行的命令。
选项
选项 | 类型 | 描述 |
---|---|---|
readConcern | MongoDB\Driver\ReadConcern |
要应用于操作的读取关注。 此选项在 MongoDB 3.2+ 中可用,如果为较旧的服务器版本指定此选项,将在执行时导致异常。 |
readPreference | MongoDB\Driver\ReadPreference |
用于为操作选择服务器的读取偏好。 |
session | MongoDB\Driver\Session |
要与操作关联的会话。 |
如果您使用的是正在进行事务的 "session"
,则不能指定 "readConcern"
或 "writeConcern"
选项。这将导致抛出 MongoDB\Driver\Exception\InvalidArgumentException。相反,您应该在使用 MongoDB\Driver\Session::startTransaction() 创建事务时设置这两个选项。
如果成功,则返回 MongoDB\Driver\Cursor。
"session"
选项与关联的事务结合使用,同时还使用 "readConcern"
或 "writeConcern"
选项,则抛出 MongoDB\Driver\Exception\InvalidArgumentException。