Docs Menu
Docs Home
/ /
Claves de partición

Establecer campos de clave de fragmento faltantes

Si le faltan campos de clave de fragmento, puede configurar el campo de clave de fragmento en nullSi desea establecer el campo de clave de fragmento faltante en un valor distinto denull, consulte Cambiar el valor de la clave de fragmento de un documento.

Para realizar la actualización, puede utilizar las siguientes operaciones en mongos un:

Comando
Método
Descripción
update with
multi: true
  • Se puede utilizar para establecer el valor de clave faltante en null únicamente.

  • Puede realizarse dentro o fuera de una transacción.

  • Se puede realizar como una escritura reintentable o no.

  • Para requisitos adicionales, consulta el comando/método específico.

update with
multi: false
  • Se puede utilizar para establecer el valor de la clave faltante en null o cualquier otro valor.

  • La actualización para establecer los campos clave de partición que faltan debe cumplir uno de los siguientes requisitos:

    • El filtro de la consulta contiene una condición de igualdad en la clave de fragmento completa en la consulta

    • El filtro de la consulta contiene una coincidencia exacta en _id

    • La actualización se dirige a un solo fragmento

  • Para establecer unnull valor distinto de, consulte Cambiar el valor de la clave de fragmento de un documento.

  • Para requisitos adicionales, consulta el comando/método específico.

  • Se puede utilizar para establecer el valor de la clave faltante en null o cualquier otro valor.

  • Al configurar campos de clave de fragmento faltantes con un método que actualiza explícitamente solo un documento, la actualización debe cumplir uno de los siguientes requisitos:

    • El filtro de la consulta contiene una condición de igualdad en la clave de fragmento completa en la consulta

    • El filtro de la consulta contiene una coincidencia exacta en _id

    • La actualización se dirige a un solo fragmento

  • Se devuelven valores de clave faltantes al coincidir con null. Para evitar actualizar un valor de clave null, incluya condiciones de consulta adicionales según corresponda.

  • Para establecer unnull valor distinto de, consulte Cambiar el valor de la clave de fragmento de un documento.

  • Para requisitos adicionales, consulta el comando/método específico.

  • Para establecer un valor null, puede especificar múltiples modificaciones de clave de fragmento en la operación masiva.

  • Al configurar campos de clave de fragmento faltantes con un método que actualiza explícitamente solo un documento, la actualización debe cumplir uno de los siguientes requisitos:

    • El filtro de la consulta contiene una condición de igualdad en la clave de fragmento completa en la consulta

    • El filtro de la consulta contiene una coincidencia exacta en _id

    • La actualización se dirige a un solo fragmento

  • Para establecer unnull valor distinto de, consulte Cambiar el valor de la clave de fragmento de un documento.

  • Para conocer requisitos adicionales, consulte el comando/método subyacente.

Considere una colección sales fragmentada en el campo location. Algunos documentos de la colección no tienen el campo location. Un campo faltante se considera igual a un valor nulo. Para establecer explícitamente estos campos como null, ejecute el siguiente comando:

db.sales.updateOne(
{ _id: 12345, location: null },
{ $set: { location: null } }
)

Al configurar campos de clave de fragmento faltantes con db.collection.updateOne() u otro método que actualiza explícitamente solo un documento, la actualización debe cumplir uno de los siguientes requisitos:

  • El filtro de la consulta contiene una condición de igualdad en la clave de fragmento completa en la consulta

  • El filtro de la consulta contiene una coincidencia exacta en _id

  • la actualización está dirigida a una única partición

Volver

Cambiar el valor de la clave de fragmento de un documento

En esta página