MongoDB\Driver\Server::executeReadWriteCommand
(mongodb >=1.4.0)
MongoDB\Driver\Server::executeReadWriteCommand — Execute a database command that reads and writes on this server
说明
$db
, MongoDB\Driver\Command $command
[, array $options
= array()
] ) : MongoDB\Driver\CursorExecutes the command on this server.
This method will apply logic that is specific to commands that read and write (e.g. » findAndModify) and take the MongoDB server version into account. The "readConcern" and "writeConcern" options will default to the corresponding values from the MongoDB Connection URI.
参数
-
db
(string) -
The name of the database on which to execute the command.
-
command
(MongoDB\Driver\Command) -
The command to execute.
-
options
-
options Option Type Description readConcern MongoDB\Driver\ReadConcern A read concern to apply to the operation.
This option is available in MongoDB 3.2+ and will result in an exception at execution time if specified for an older server version.
session MongoDB\Driver\Session A session to associate with the operation.
writeConcern MongoDB\Driver\WriteConcern A write concern to apply to the operation.
WarningIf you are using a "session" which has a transaction in progress, you cannot specify a "readConcern" or "writeConcern" option. This will result in an MongoDB\Driver\Exception\InvalidArgumentException being thrown. Instead, you should set these two options when you create the transaction with MongoDB\Driver\Session::startTransaction().
返回值
Returns MongoDB\Driver\Cursor on success.
错误/异常
- Throws MongoDB\Driver\Exception\InvalidArgumentException if the "session" option is used with an associated transaction in combination with a "readConcern" or "writeConcern" option.
- Throws MongoDB\Driver\Exception\InvalidArgumentException if the "session" option is used in combination with an unacknowledged write concern.
- Throws MongoDB\Driver\Exception\InvalidArgumentException on argument parsing errors.
- Throws MongoDB\Driver\Exception\ConnectionException if connection to the server fails (for reasons other than authentication).
- Throws MongoDB\Driver\Exception\AuthenticationException if authentication is needed and fails.
- Throws MongoDB\Driver\Exception\RuntimeException on other errors (e.g. invalid command).
更新日志
版本 | 说明 |
---|---|
1.4.4 | MongoDB\Driver\Exception\InvalidArgumentException will be thrown if the "session" option is used in combination with an unacknowledged write concern. |
注释
Note: It is the caller's responsibility to ensure that the server is capable of executing the write operation. For example, executing a write operation on a secondary (excluding its "local" database) will fail.
参见
- MongoDB\Driver\Command
- MongoDB\Driver\Cursor
- MongoDB\Driver\Server::executeCommand() - Execute a database command on this server
- MongoDB\Driver\Server::executeReadCommand() - Execute a database command that reads on this server
- MongoDB\Driver\Server::executeWriteCommand() - Execute a database command that writes on this server
- MongoDB\Driver\Manager::executeReadWriteCommand() - Execute a database command that reads and writes