MongoDB\Driver\BulkWriteCommand::updateOne
En esta página
MongoDB\Driver\BulkWriteCommand::updateOne
Añadir una operación updateOne
Descripción#
public MongoDB\Driver\BulkWriteCommand::updateOne(string $namespace, array $filter, array $update, [array $options]): void
```php
Añade una operación updateOne al `MongoDB\Driver\BulkWriteCommand`. El primer documento que coincida con `filter` en la colección identificada por `namespace` será actualizado.
## Parámetros
`namespace` (`string`)
Un espacio de nombres completamente calificado (ej. `"databaseName.collectionName"`)
`filter` (`arrayobject`)
El [atributo de la consulta](https://www.mongodb.com/docs/manual/tutorial/query-documents/). Un atributo vacío hará coincidir todos los documentos de la colección.
> [!NOTE]
> Al evaluar los criterios de consulta, MongoDB compara los tipos y los valores según sus propias [reglas de comparación para los tipos BSON](https://www.mongodb.com/docs/manual/reference/bson-type-comparison-order/), que difieren de las reglas de [comparación](#types.comparisons) y de [manipulación de tipos](#language.types.type-juggling) de PHP. Al hacer coincidir un tipo BSON especial, los criterios de consulta deben utilizar la [clase BSON](#mongodb.bson) (ej.: utilizar `MongoDB\BSON\ObjectId` para hacer coincidir un [ObjectId](https://www.mongodb.com/docs/manual/reference/bson-types/#objectid)).
`update` (`arrayobject`)
Un documento que contiene ya sea operadores de actualización (por ejemplo `$set`) o un [pipeline de agregación](https://www.mongodb.com/docs/manual/reference/command/update/#update-with-an-aggregation-pipeline).
`options`
<table>
<caption>options</caption>
<thead>
<tr>
<th>Opción</th>
<th>Tipo</th>
<th>Descripción</th>
<th>Valor por omisión</th>
</tr>
</thead>
<tbody>
<tr>
<td>arrayFilters</td>
<td><code>array</code></td>
<td><p>Un array de documentos de filtro que determina qué elementos de array modificar para una operación de actualización en un campo de array. Consulte <a href="https://www.mongodb.com/docs/manual/reference/command/update/#update-command-arrayfilters">Especificar arrayFilters para operaciones de actualización de arrays</a> en el manual de MongoDB para más información.</p></td>
<td></td>
</tr>
<tr>
<td>collation</td>
<td><code>arrayobject</code></td>
<td><p><a href="https://www.mongodb.com/docs/upcoming/reference/collation/">Collation</a> permite a los usuarios especificar reglas específicas del lenguaje para la comparación de cadenas, por ejemplo, reglas para mayúsculas o acentos. Al especificar una collation, el campo <code>"locale"</code> es obligatorio; todos los demás campos de la collation son opcionales. Para la descripción de estos campos, consúltese el <a href="https://www.mongodb.com/docs/upcoming/reference/collation/#collation-document">documento Collation</a>.</p>
<p>Si la collation no es especificada pero la colección tiene una collation predeterminada, la operación utilizará la collation especificada para la colección. Si ninguna collation es especificada para la colección o para la operación, MongoDB utilizará el binario simple de comparación utilizado en versiones anteriores para las comparaciones de cadenas.</p>
<p>Esta opción está disponible en MongoDB 3.4+ y una excepción será emitida en tiempo de ejecución si es especificada en una versión anterior.</p></td>
<td></td>
</tr>
<tr>
<td>hint</td>
<td><code>stringarrayobject</code></td>
<td><p>Especificación de índice. Especifique ya sea el nombre del índice como string o el patrón de clave de índice. Si se especifica, entonces el sistema de consultas solo considerará planes que usen el índice indicado.</p></td>
<td></td>
</tr>
<tr>
<td>sort</td>
<td><code>arrayobject</code></td>
<td><p>Especifica qué documento actualizará la operación si la consulta coincide con múltiples documentos. El primer documento coincidente según el orden de ordenación será actualizado.</p></td>
<td></td>
</tr>
<tr>
<td>upsert</td>
<td><code>bool</code></td>
<td>Si <code>filter</code> no coincide con un documento existente, inserta un <em>único</em> documento. El documento será creado aplicando operadores en <code>update</code> a cualquier valor de campo en <code>filter</code>.</td>
<td><code>false</code></td>
</tr>
</tbody>
</table>
## Valores devueltos
No se retorna ningún valor.
## Errores/Excepciones
Lanza una excepción
MongoDB\Driver\Exception\InvalidArgumentException
en caso de error durante el análisis de un argumento.
## Ejemplos
Ejemplo de `MongoDB\Driver\BulkWriteCommand::updateOne`
```php
Véase también#
MongoDB\Driver\BulkWriteCommand::replaceOne
MongoDB\Driver\BulkWriteCommand::updateMany
MongoDB\Driver\Manager::executeBulkWriteCommand
MongoDB\Driver\BulkWriteCommandResult