Tworzenie elementu w usłudze Azure Cosmos DB for NoSQL przy użyciu języka JavaScript
DOTYCZY: NoSQL
Elementy w usłudze Azure Cosmos DB reprezentują określoną jednostkę przechowywaną w kontenerze. W interfejsie API for NoSQL element składa się z danych w formacie JSON z unikatowym identyfikatorem.
Odpowiedź elementu, definicji elementu i elementu
W zestawie SDK języka JavaScript trzy obiekty powiązane z elementem mają różne cele.
Nazwisko | Operacje |
---|---|
Produkt | Funkcje, w tym odczyt, poprawka, zastępowanie, usuwanie. |
ElementDefinition | Niestandardowy obiekt danych. Zawiera id właściwości i ttl automatycznie. |
ItemResponse | Obejmuje statusCode właściwości , item i . |
Użyj właściwości obiektu ItemResponse , aby zrozumieć wynik operacji.
- statusCode: kod stanu HTTP. Pomyślna odpowiedź znajduje się w zakresie od 200 do 299.
- activityId: unikatowy identyfikator operacji, taki jak tworzenie, odczyt, zastępowanie lub usuwanie.
- etag: tag jednostki skojarzony z danymi. Służy do optymistycznej współbieżności, buforowania i żądań warunkowych.
- item: Obiekt elementu używany do wykonywania operacji, takich jak odczyt, zastępowanie, usuwanie.
- resource: Twoje dane niestandardowe.
Tworzenie unikatowego identyfikatora elementu
Unikatowy identyfikator jest odrębnym ciągiem, który identyfikuje element w kontenerze. Właściwość id
jest jedyną wymaganą właściwością podczas tworzenia nowego dokumentu JSON. Na przykład ten dokument JSON jest prawidłowym elementem w usłudze Azure Cosmos DB:
{
"id": "unique-string-2309509"
}
W zakresie kontenera dwa elementy nie mogą współdzielić tego samego unikatowego identyfikatora.
Ważne
Właściwość id
uwzględnia wielkość liter. Właściwości o nazwie ID
, Id
, iD
i _id
będą traktowane jako dowolna właściwość JSON.
Po utworzeniu identyfikator URI elementu ma następujący format:
https://<cosmos-account-name>.documents.azure.com/dbs/<database-name>/docs/<item-resource-identifier>
Podczas odwoływania się do elementu przy użyciu identyfikatora URI użyj identyfikatora zasobu wygenerowanego przez system zamiast id
pola. Aby uzyskać więcej informacji na temat właściwości elementu generowanego przez system w usłudze Azure Cosmos DB for NoSQL, zobacz właściwości elementu
Tworzenie elementu
Utwórz element z obiektem elementów kontenera przy użyciu metody create.
const { statusCode, item, resource, activityId, etag} = await container.items.create({
id: '2',
category: 'gear-surf-surfboards',
name: 'Sunnox Surfboard',
quantity: 8,
sale: true
});
Uzyskiwanie dostępu do elementu
Uzyskiwanie dostępu do elementu za pośrednictwem obiektu Item . Można uzyskać do tego dostęp z obiektu Kontener lub zmienić go z obiektów Database lub 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();
Dostęp według obiektu:
- Elementy (mnoga): utwórz, batch, obejrzyj zestawienie zmian, odczytaj wszystkie, upsert lub elementy zapytania.
- Element (pojedyncza): odczyt, poprawka, zastąpienie lub usunięcie elementu.
Zastępowanie elementu
Zastąp dane obiektem Item metodą 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
});
Odczytywanie elementu
Odczytywanie najnowszych danych za pomocą metody read obiektu Item.
const { statusCode, item, resource, activityId, etag} = await item.read();
Usuwanie elementu
Usuń element za pomocą metody delete obiektu Item.
const { statusCode, item, activityId, etag} = await item.delete();
Następne kroki
Po utworzeniu różnych elementów użyj następnego przewodnika, aby wykonać zapytanie o element.