Compartir a través de


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

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 Read, Patch, Replace, Delete.
ItemDefinition Objeto de datos personalizado. Incluye id y ttl propiedades automáticamente.
ItemResponse Incluye statusCode, itemy 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 de 200 a 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 read, replace, delete.
  • resource: datos personalizados.

Creación de un identificador único para un elemento

El identificador único es una cadena distinta que identifica un elemento dentro de un contenedor. La id propiedad 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 id propiedad distingue mayúsculas de minúsculas. Las propiedades denominadas ID, Id, iDy _id se tratarán como una propiedad JSON arbitraria.

Una vez creado, el 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 URI, use el identificador de recursos generado por el sistema en lugar del id campo . Para más información sobre las propiedades de elementos generados por el sistema en Azure Cosmos DB para NoSQL, 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 acceder al 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 objeto:

  • Elementos (plural): crear, procesar por lotes, supervisar el flujo de cambios, leer todo, actualizar o insertar (upsert), o consultar elementos.
  • Elemento (singular): leer, revisar, reemplazar o eliminar un elemento.

Reemplazar 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 
    });

Leer un elemento

Lea los datos más actuales con el método read del objeto Item.

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

Eliminar un elemento

Elimine el elemento con el método delete del objeto Item.

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

Pasos siguientes

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