Nuevo en la versión 2.1.
Definición
MongoDB\ClientBulkWrite::updateOne()Especifica una operación de actualización en el comando bulk guardar para el primer documento coincidente. Este método devuelve el
MongoDB\ClientBulkWriteinstancia en la que se llama.function updateOne( array|object $filter, array|object $update, array $options = [] ): self
Parámetros
$filter: arreglo|objeto- El criterio de filtro que especifica los documentos a actualizar.
$update: arreglo|objeto- Las combinaciones de campos y valores que se van a actualizar y cualquier operador de actualización relevante.
$updateutiliza MongoDB operadores de actualización. Puedes pasar una pipeline de agregación como este parámetro. $options: arregloUna matriz que especifica las opciones deseadas.
NombreTipoDescripciónfiltrosDeArreglo
arreglo
Un arreglo de documentos de filtro que determina qué elementos del arreglo modificar para una operación de actualización en un campo de arreglo.
intercalación
arreglo|objeto
Laintercalación permite a los usuarios especificar reglas específicas del idioma para la comparación de cadenas, como el uso de mayúsculas y minúsculas y tildes. Al especificar la intercalación, el
localecampo es obligatorio; todos los demás campos son opcionales. Para obtener descripciones de los campos, consulte el documento de intercalación.Si la intercalación no está especificada pero la colección tiene una intercalación predeterminada, la operación utiliza la intercalación especificada para la colección. Si no se especifica una intercalación para la colección o para la operación, MongoDB utiliza la comparación binaria simple utilizada en versiones anteriores para comparar cadenas.
hint
cadena|arreglo|objeto
El índice a utilizar. Especifique el nombre del índice como una string o el patrón clave del índice como un documento. Si se especifica, el sistema de query solo considerará los planes que utilicen el índice sugerido.
sort
arreglo|objeto
La especificación de ordenación para el ordenamiento de los documentos coincidentes. Define esta opción para aplicar un orden a los documentos coincidentes antes de que el servidor realice la operación de actualización.
inserción
booleano
Si se configura en
true, crea un nuevo documento cuando ningún documento coincide con los criterios de la query. El valor por defecto esfalse, que no inserta un nuevo documento cuando no se encuentra coincidencia.
Errores/Excepciones
MongoDB\Exception\UnsupportedException si se utilizan opciones que no son compatibles con el servidor seleccionado (porcollation readConcernwriteConcernejemplo,,,).
MongoDB\Exception\InvalidArgumentException por errores relacionados con el análisis de parámetros u opciones.
MongoDB\Driver\Exception\BulkWriteCommandException para errores relacionados con la operación de guardado. Puedes inspeccionar el valor devuelto por getWriteErrors() para determinar la naturaleza del error.
MongoDB\Driver\Exception\RuntimeException para otros errores en el nivel de extensión (por ejemplo, errores de conexión).
Comportamiento
Al evaluar los criterios de búsqueda, MongoDB compara tipos y valores según sus propias reglas de comparación para tipos BSON, que difieren de las reglas de comparación y manejo de tipos de PHP. Cuando se coincida con un tipo BSON especial, los criterios de consulta deben utilizar la Clase BSON respectiva en la extensión (por ejemplo, usa MongoDB\BSON\ObjectId para hacer coincidir con un ObjectId.
Si se lanza una MongoDB\Driver\Exception\BulkWriteCommandException, puede llamar a getWriteErrors() e inspeccionar la información en la matriz devuelta para determinar la naturaleza del error.
Por ejemplo, es posible que una operación de escritura se haya aplicado correctamente al servidor principal, pero no haya solucionado el problema. Alternativamente, es posible que una operación de escritura haya fallado por completo, por ejemplo, por violar la restricción de clave única.
Ver también
Sección de escritura en lote de clientes de la guía de operaciones de escritura en lote