(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
= null
): MongoDB\Driver\CursorExecutes the command on this server.
This method will apply logic that is specific to commands that read and write
(e.g.
» aggregate)
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
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. |
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().
Gibt bei Erfolg einen MongoDB\Driver\Cursor zurück.
"session"
mit einer zugehörigen Transaktion in Kombination mit einer der Optionen "readConcern"
oder "writeConcern"
verwendet wird."session"
in Kombination mit einer unbestätigten Schreibanweisung verwendet wird.
Version | Beschreibung |
---|---|
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.
|
Hinweis: Es liegt in der Verantwortung des aufrufenden Codes, sicherzustellen, dass der Server in der Lage ist, den Schreibvorgang auszuführen. So schlägt beispielsweise die Ausführung eines Schreibvorgangs auf einem sekundären Server (mit Ausnahme seiner "lokalen" Datenbank) fehl.