(mongodb >=0.2.0)
MongoDB\Driver\Manager::executeInsert — Convenience method for a single insert operation
$namespace
, array|object $document
[, MongoDB\Driver\WriteConcern $writeConcern
] )Convenience method to execute a MongoDB\Driver\BulkWrite with only one insert operation.
namespace
Un espacio de nombres completamente cualificado (nombreBaseDatos.nombreColección)
document
The document to insert.
writeConcern
Opcionalmente, un MongoDB\Driver\WriteConcern. Si no se proporciona, se empleará el valor del Asunto de escritura establecido por el URI de conexión de MongoDB.
Returns MongoDB\Driver\WriteResult on success, lanza una excepción (instanceof MongoDB\Driver\Exception) en caso de fallo.
Ejemplo #1 MongoDB\Driver\Manager::executeInsert() example
<?php
$document = array(
"title" => "mongodb",
);
$writeConcern = new MongoDB\Driver\WriteConcern(MongoDB\Driver\WriteConcern::MAJORITY, 100);
$manager = new MongoDB\Driver\Manager("mongodb://localhost:27017");
$result = $manager->executeInsert("mydb.collection", $document, $writeConcern);
printf("Inserted %d document(s)\n", $result->getInsertedCount());
/* If the WriteConcern could not be fulfilled */
if ($writeConcernError = $result->getWriteConcernError()) {
printf("%s (%d): %s\n", $writeConcernError->getMessage(), $writeConcernError->getCode(), var_export($writeConcernError->getInfo(), true));
}
/* If the write could not happen at all */
foreach ($result->getWriteErrors() as $writeError) {
printf("%s (%d)\n", $writeError->getMessage(), $writeError->getCode());
}
?>
El resultado del ejemplo sería algo similar a:
Inserted 1 document(s)
Nota:
En caso de fallo en una escritura MongoDB\Driver\WriteResult::getWriteErrors() solamente contendrá un MongoDB\Driver\WriteError en el array, y MongoDB\Driver\WriteError::getIndex() siempre será 0 (el índice de esta operación en el lote).