Compartir a través de


Creación de un elemento en Azure Cosmos DB for NoSQL mediante JavaScript

SE APLICA A: NoSQL

Los elementos de Azure Cosmos DB representan una entidad específica almacenada dentro de un contenedor. En la API para NoSQL, un elemento consta de datos con formato JSON con un identificador único.

Elemento, definición de elemento y respuesta de elemento

En el SDK de JavaScript, los tres objetos relacionados con un elemento tienen fines diferentes.

Nombre Operations
Elemento Funcionalidad que incluye Lectura, Revisión, Reemplazo, Eliminación.
ItemDefinition El objeto de datos personalizado. Incluye las propiedades id y ttl automáticamente.
ItemResponse Incluye statusCode, item y otras propiedades.

Use las propiedades del objeto ItemResponse para comprender el resultado de la operación.

  • statusCode: código de estado HTTP. Una respuesta correcta está en el intervalo 200-299.
  • activityId: identificador único para la operación, como crear, leer, reemplazar o eliminar.
  • etag: etiqueta de entidad asociada a los datos. Se usa para la simultaneidad optimista, el almacenamiento en caché y las solicitudes condicionales.
  • item: objeto Item usado para realizar operaciones como lectura, reemplazo y eliminación.
  • resource: los datos personalizados.

Creación de un identificador único para un elemento

El identificador único es una cadena única que identifica un elemento dentro de un contenedor. La propiedad id es la única propiedad necesaria al crear un nuevo documento JSON. Por ejemplo, este documento JSON es un elemento válido en Azure Cosmos DB:

{
  "id": "unique-string-2309509"
}

Dentro del ámbito de un contenedor, dos elementos no pueden compartir el mismo identificador único.

Importante

La propiedad id distingue mayúsculas de minúsculas. Las propiedades llamadas ID, Id, iD y _id se tratarán como una propiedad JSON arbitraria.

Una vez creado, el identificador URI de un elemento tiene este formato:

https://<cosmos-account-name>.documents.azure.com/dbs/<database-name>/docs/<item-resource-identifier>

Al hacer referencia al elemento mediante un identificador URI, use el identificador de recurso generado por el sistema en lugar del campo id. Para más información sobre las propiedades de los elementos generadas por el sistema en NoSQL de Azure Cosmos DB, consulte Propiedades de un elemento

Crear un elemento

Cree un elemento con el objeto items del contenedor mediante el método create .

const { statusCode, item, resource, activityId, etag} = await container.items.create({ 
        id: '2', 
        category: 'gear-surf-surfboards',
        name: 'Sunnox Surfboard',
        quantity: 8,
        sale: true 
    });

Acceso a un elemento

Acceda a un elemento a través del objeto Item. Se puede tener acceso desde el objeto Container o cambiar desde los objetos Database o CosmosClient.

// Chained, then use a method of the Item object such as `read`
const { statusCode, item, resource, activityId, etag} = await client.database(databaseId).container(containerId).item(itemId).read();

Acceso por medio de un objeto:

  • Items (plural): crear, procesar por lotes, ver la fuente de cambios, leer todo, upsert o consultar elementos.
  • Item (singular): lectura, revisión, reemplazo o eliminación de un elemento.

Reemplazo de un elemento

Reemplace los datos por el objeto Item por el método replace.

const { statusCode, item, resource, activityId, etag} = await item.replace({ 
        id: '2', 
        category: 'gear-surf-surfboards-retro',
        name: 'Sunnox Surfboard Retro',
        quantity: 5,
        sale: false 
    });

Lectura de un elemento

Lea los datos más actuales con el objeto Item, específicamente, el método read.

const { statusCode, item, resource, activityId, etag} = await item.read();

Eliminación de un elemento

Elimine el elemento con el objeto Item, específicamente, el método delete.

const { statusCode, item, activityId, etag} = await item.delete();

Pasos siguientes

Ahora que ha creado varios elementos, use la siguiente guía para consultar un elemento.