(mongodb >=1.4.0)
MongoDB\Driver\Server::executeReadWriteCommand — 执行在此服务器上进行读写操作的数据库命令
$db
, MongoDB\Driver\Command $command
, ?array $options
= null
): MongoDB\Driver\Cursor在此服务器上执行命令。
此方法将应用特定于读写命令的逻辑(例如 » aggregate)。"readConcern"
和 "writeConcern"
选项的默认值将从活动事务(由 "session"
选项指示)推断,然后是 连接 URI。
db
(string)要执行命令的数据库的名称。
command
(MongoDB\Driver\Command)要执行的命令。
选项
选项 | 类型 | 描述 |
---|---|---|
readConcern | MongoDB\Driver\ReadConcern |
要应用于操作的读关注。 此选项在 MongoDB 3.2+ 中可用,如果为旧的服务器版本指定,则在执行时会导致异常。 |
session | MongoDB\Driver\Session |
要与操作关联的会话。 |
writeConcern | MongoDB\Driver\WriteConcern |
要应用于操作的写关注。 |
如果您使用的是正在进行事务的 "session"
,则不能指定 "readConcern"
或 "writeConcern"
选项。这会导致抛出 MongoDB\Driver\Exception\InvalidArgumentException。相反,您应该在使用 MongoDB\Driver\Session::startTransaction() 创建事务时设置这两个选项。
如果成功,则返回 MongoDB\Driver\Cursor。
"session"
选项与关联的事务结合使用,并且与 "readConcern"
或 "writeConcern"
选项结合使用,则抛出 MongoDB\Driver\Exception\InvalidArgumentException。"session"
选项与未确认的写关注一起使用,则抛出 MongoDB\Driver\Exception\InvalidArgumentException。
版本 | 描述 |
---|---|
PECL mongodb 1.4.4 |
如果 "session" 选项与未确认的写关注一起使用,则将抛出 MongoDB\Driver\Exception\InvalidArgumentException。 |
注意: 确保服务器能够执行写操作是调用者的责任。例如,在辅助节点(不包括其“local”数据库)上执行写操作将失败。