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.