MongoDB\Driver\BulkWriteCommand::__construct

(mongodb >=2.1.0)

MongoDB\Driver\BulkWriteCommand::__construct — CrĂ©er une nouvelle BulkWriteCommand

Description

public function MongoDB\Driver\BulkWriteCommand::__construct(?array $options = null)

Construit une nouvelle MongoDB\Driver\BulkWriteCommand, qui peut ĂȘtre utilisĂ©e pour effectuer de nombreuses opĂ©rations d'insertions, de mises Ă  jour et de suppressions sur plusieurs collections dans une seule requĂȘte Ă  l'aide de la commande » bulkWrite introduite dans MongoDB 8.0. Cela diffĂšre de MongoDB\Driver\BulkWrite, qui est supportĂ© par toutes les versions du serveur mais limitĂ© Ă  une seule collection.

AprĂšs que toutes les opĂ©rations d'Ă©criture ont Ă©tĂ© ajoutĂ©es, cet objet peut ĂȘtre exĂ©cutĂ© avec MongoDB\Driver\Manager::executeBulkWriteCommand().

Liste de paramĂštres

options (array)

options
Option Type Description Défaut
bypassDocumentValidation bool Si true, permet aux opérations d'insertion et de mise à jour de contourner la validation au niveau du document. false
comment mixed Un commentaire arbitraire pour aider à tracer l'opération à travers le profileur de base de données, la sortie currentOp et les journaux.
let array|object Dictionnaire des noms et des valeurs des paramĂštres. Les valeurs doivent ĂȘtre des constantes ou des expressions fermĂ©es qui ne font pas rĂ©fĂ©rence aux champs du document. Les paramĂštres peuvent ensuite ĂȘtre accĂ©dĂ©s en tant que variables dans un contexte d'expression agrĂ©gĂ©e (par exemple $$var). Cette option est disponible dans MongoDB 5.0+ et entraĂźnera une exception au moment de l'exĂ©cution si elle est spĂ©cifiĂ©e pour une version antĂ©rieure du serveur.
ordered bool Si les opĂ©rations dans cette Ă©criture groupĂ©e doivent ĂȘtre exĂ©cutĂ©es dans l'ordre dans lequel elles ont Ă©tĂ© spĂ©cifiĂ©es. Si false, les Ă©critures continueront Ă  ĂȘtre exĂ©cutĂ©es si une Ă©criture individuelle Ă©choue. Si true, les Ă©critures s'arrĂȘteront si une Ă©criture individuelle Ă©choue. true
verboseResults bool Si les dĂ©tails des rĂ©sultats de chaque opĂ©ration rĂ©ussie doivent ĂȘtre inclus dans le rĂ©sultat dans la MongoDB\Driver\BulkWriteCommandResult retournĂ©e. false

Erreurs / Exceptions

  • Lance une exception MongoDB\Driver\InvalidArgumentException lors d'une erreur survenue pendant l'analyse d'un argument.

Exemples

Exemple #1 Exemple de MongoDB\Driver\BulkWriteCommand::__construct()

<?php

$manager
= new MongoDB\Driver\Manager;

$bulk = new MongoDB\Driver\BulkWriteCommand;

// Supprime les documents de deux collections
$bulk->deleteMany('db.coll_one', []);
$bulk->deleteMany('db.coll_two', []);

// Ajoute les documents de deux collections
$bulk->insertOne('db.coll_one', ['_id' => 1]);
$bulk->insertOne('db.coll_two', ['_id' => 2]);
$bulk->insertOne('db.coll_two', ['_id' => 3]);

// Modifie un document dans "coll_one"
$bulk->updateOne('db.coll_one', ['_id' => 1], ['$set' => ['x' => 1]]);

$result = $manager->executeBulkWriteCommand($bulk);

printf("%d document(s) ont été inséré(s)\n", $result->getInsertedCount());
printf("%d document(s) ont été mis à jour(s)\n", $result->getModifiedCount());

?>

L'exemple ci-dessus va afficher :

3 document(s) ont été inséré(s)
1 document(s) ont été mis à jour(s)

Voir aussi

add a note

User Contributed Notes

There are no user contributed notes for this page.