(mongodb >=1.4.0)
MongoDB\Driver\Server::executeWriteCommand — Execute a database command that writes on this server
$db, MongoDB\Driver\Command $command, ?array $options = null): MongoDB\Driver\CursorExecutes the command on this server.
This method will apply logic that is specific to commands that write (e.g. » drop). The default value for the "writeConcern" option will be inferred from an active transaction (indicated by the "session" option), followed by the connection URI.
Note: This method is not intended to be used to execute » insert, » update, or » delete commands. Users are encouraged to use MongoDB\Driver\Server::executeBulkWrite() for those operations.
db (string)The name of the database on which to execute the command.
command (MongoDB\Driver\Command)The command to execute.
options| Option | Type | Description |
|---|---|---|
| session | MongoDB\Driver\Session | A session to associate with the operation. |
| writeConcern | MongoDB\Driver\WriteConcern | A write concern to apply to the operation. |
If 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.
"session" option is used with an associated transaction in combination with a "readConcern" or "writeConcern" option."session" option is used in combination with an unacknowledged write concern.| Version | Description |
|---|---|
| PECL mongodb 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.