Freigeben über


Erstellen eines Elements in Azure Cosmos DB for NoSQL mithilfe von JavaScript

GILT FÜR: NoSQL

Elemente in Azure Cosmos DB stellen eine bestimmte Entität dar, die in einem Container gespeichert ist. In der API für NoSQL besteht ein Element aus Daten im JSON-Format mit einem eindeutigen Bezeichner.

Element, Elementdefinition und Elementantwort

Im JavaScript SDK haben die drei Objekte, die sich auf ein Element beziehen, unterschiedliche Zwecke.

Name Vorgänge
Element Funktionen wie Lesen, Patchen, Ersetzen, Löschen.
ItemDefinition Ihr benutzerdefiniertes Datenobjekt. Enthält automatisch die Eigenschaften id und ttl.
ItemResponse Enthält statusCode, itemund andere Eigenschaften.

Verwenden Sie die Eigenschaften des ItemResponse-Objekts, um das Ergebnis des Vorgangs zu verstehen.

  • statusCode: HTTP-Statuscode. Eine erfolgreiche Antwort liegt im Bereich von 200 bis 299.
  • activityId: Eindeutiger Bezeichner für den Vorgang, z. B. Erstellen, Lesen, Ersetzen oder Löschen.
  • etag: Entitätstag, das den Daten zugeordnet ist. Verwenden Sie für optimistische Parallelität, Zwischenspeicherung und bedingte Anforderungen.
  • item: Element-Objekt , das zum Ausführen von Vorgängen wie Lesen, Ersetzen, Löschen verwendet wird.
  • resource: Ihre benutzerdefinierten Daten.

Erstellen eines eindeutigen Bezeichners für ein Element

Der eindeutige Bezeichner ist eine individuelle Zeichenfolge, die ein Element in einem Container identifiziert. Beim Erstellen eines neuen JSON-Dokuments wird nur die Eigenschaft id benötigt. Das folgende JSON-Dokument ist beispielsweise ein gültiges Element in Azure Cosmos DB:

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

Im Bereich eines Containers können zwei Elemente nicht den gleichen eindeutigen Bezeichner besitzen.

Wichtig

Bei der Eigenschaft id wird die Groß-/Kleinschreibung beachtet. Eigenschaften mit dem Namen ID, Id, iD oder _id werden als beliebige JSON-Eigenschaft behandelt.

Nach der Erstellung weist der URI für ein Element das folgende Format auf:

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

Verwenden Sie anstelle des Felds id den systemseitig generierten Ressourcenbezeichner, wenn Sie über einen URI auf das Element verweisen. Weitere Informationen zu systemseitig generierten Elementeigenschaften in Azure Cosmos DB for NoSQL finden Sie unter Eigenschaften eines Elements.

Erstellen eines Elements

Erstellen Sie mithilfe der create-Methode ein Element mit dem Items-Objekt des Containers.

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

Zugreifen auf ein Element

Greifen Sie über das Item-Objekt auf ein Element zu. Auf diese kann über das Container-Objekt oder über das Database- oder CosmosClient-Objekt zugegriffen werden.

// 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();

Zugriff nach Objekt:

  • Elemente (Plural): Erstellen, Batchen, Überwachungselement-Änderungsfeed, Alle lesen, Upsert oder Abfrageelemente.
  • Element (Singular): Lesen, Patchen, Ersetzen oder Löschen eines Elements.

Ersetzen eines Elements

Ersetzen Sie die Daten durch das Item-Objekt durch die replace-Methode.

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

Lesen eines Elements

Lesen Sie die aktuellsten Daten mit der Read-Methode des Item-Objekts.

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

Löschen eines Elements

Löschen Sie das Element mit der delete-Methode des Item-Objekts.

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

Nächste Schritte

Nachdem Sie nun verschiedene Elemente erstellt haben, erfahren Sie im nächsten Leitfaden, zum Abfragen eines Element: