Menu Docs

Atualizar vários documentos

Nesta página

Você pode atualizar vários documentos em uma coleção chamando o método update() em um construtor de consulta.

Passe um filtro de query para o método where() para recuperar documentos que atendam a um conjunto de critérios. Em seguida, atualize os documentos correspondentes passando as alterações de documento destinadas para o método update() .

Dica

Para saber mais sobre como atualizar dados com a integração do Laravel, consulte a seção Modificar documentos do guia Operações de gravação.

Selecione a partir das seguintes abas Eloquent e Query Builder para visualizar exemplos de uso para a mesma operação que usa cada sintaxe de query correspondente:

Este exemplo executa as seguintes ações:

  • Utiliza o modelo Movie Eloquent para representar a coleção do sample_mflix movies banco de dados do

  • Atualiza documentos da coleção movies que correspondem a um filtro de consulta

  • Imprime o número de documentos atualizados

O exemplo chama os seguintes métodos no modelo Movie :

  • where(): corresponde a documentos em que o valor do campo aninhado imdb.rating é maior que 9.0

  • update(): Atualiza os documentos correspondentes adicionando um campo acclaimed e definindo seu valor para true, em seguida, retorna o número de documentos atualizados

$updates = Movie::where('imdb.rating', '>', 9.0)
->update(['acclaimed' => true]);
echo 'Updated documents: ' . $updates;
Updated documents: 20

Este exemplo executa as seguintes ações:

  • Acessos a coleção movies chamando o método table() a partir da fase DB

  • Atualiza documentos da coleção movies que correspondem a um filtro de consulta

  • Imprime o número de documentos atualizados

O exemplo chama os seguintes métodos de construtor de query:

  • where(): corresponde a documentos em que o valor do campo aninhado imdb.rating é maior que 9.0

  • update(): Atualiza os documentos correspondentes adicionando um campo acclaimed e definindo seu valor para true, em seguida, retorna o número de documentos atualizados

$updates = DB::table('movies')
->where('imdb.rating', '>', 9.0)
->update(['acclaimed' => true]);
echo 'Updated documents: ' . $updates;
Updated documents: 20

Para saber como editar seu aplicativo Laravel para executar o exemplo de uso, consulte a página de exemplos de uso.

Nesta página