MongoDB\Driver\BulkWriteCommand::__construct

(mongodb >=2.1.0)

MongoDB\Driver\BulkWriteCommand::__construct — Cria um novo BulkWriteCommand

Descrição

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

Cria um novo MongoDB\Driver\BulkWriteCommand, que pode ser usado para executar diversas operações de inserção, atualização e exclusão em vÔrias coleções em uma única solicitação usando o comando » bulkWrite introduzido no MongoDB 8.0. Isso difere de MongoDB\Driver\BulkWrite, que é suportado por todas as versões do servidor, mas limitado a uma única coleção.

Após todas as operações de gravação terem sido adicionadas, este objeto pode ser executado com MongoDB\Driver\Manager::executeBulkWriteCommand().

Parâmetros

options (array)

OpƧƵes
Opção Tipo Descrição Padrão
bypassDocumentValidation bool Se true, permite que operações de inserção e atualização contornem a validação em nível de documento. false
comment mixed Um comentÔrio arbitrÔrio para ajudar a rastrear a operação por meio do profiler do banco de dados, da saída currentOp e dos registros.
let array|object Mapa de nomes e valores de parâmetros. Os valores devem ser expressões constantes ou fechadas que não fazem referência a campos do documento. Os parâmetros podem então ser acessados como variÔveis em um contexto de expressão agregada (por exemplo, $$var). Esta opção estÔ disponível no MongoDB 5.0+ e resultarÔ em uma exceção em tempo de execução se for especificada para uma versão de servidor mais antiga.
ordered bool Se as operações nesta gravação em massa devem ser executadas na ordem em que foram especificadas. Se false, as gravações continuarão a ser executadas se uma gravação individual falhar. Se true, as gravações deixarão de ser executadas se uma gravação individual falhar. true
verboseResults bool Se os resultados detalhados de cada operação bem-sucedida devem ser incluídos no MongoDB\Driver\BulkWriteCommandResult retornado. false

Erros/ExceƧƵes

Exemplos

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

<?php

$manager
= new MongoDB\Driver\Manager;

$bulk = new MongoDB\Driver\BulkWriteCommand;

// Exclui documentos de ambas as coleƧƵes
$bulk->deleteMany('db.coll_one', []);
$bulk->deleteMany('db.coll_two', []);

// Insere documentos em duas coleƧƵes
$bulk->insertOne('db.coll_one', ['_id' => 1]);
$bulk->insertOne('db.coll_two', ['_id' => 2]);
$bulk->insertOne('db.coll_two', ['_id' => 3]);

// Atualiza um documento em "coll_one"
$bulk->updateOne('db.coll_one', ['_id' => 1], ['$set' => ['x' => 1]]);

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

printf("Inserido(s) %d documento(s)\n", $result->getInsertedCount());
printf("Atualizado(s) %d documento(s)\n", $result->getModifiedCount());

?>

O exemplo acima produzirĆ”:

Inserido(s) 3 documento(s)
Atualizado(s) 1 documento(s)

Veja TambƩm

+adicionar nota

Notas de UsuƔrios

Não hÔ notas de usuÔrios para esta pÔgina.