Ein einzelnes Element in DynamoDB lesen und schreiben - AWS SDK for JavaScript

Helfen Sie uns, dasAWS SDK for JavaScriptVersion 3 (V3) -Dokumentation durch Feedback unter Verwendung derFeedbackLink oder erstellen Sie ein Problem oder ziehen Sie eine Anfrage anGitHubaus.

DieAWS SDK for JavaScriptReferenzhandbuch zur V3-API-Referenzbeschreibt ausführlich alle API-Operationen für dieAWS SDK for JavaScriptVersion 3 (V3).

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Ein einzelnes Element in DynamoDB lesen und schreiben

JavaScript code example that applies to Node.js execution

Dieses Node.js-Codebeispiel zeigt:

  • So fügen Sie ein Element in einer DynamoDB-Tabelle hinzu.

  • So rufen Sie ein Element in einer DynamoDB-Tabelle ab.

  • So löschen Sie ein Element in einer DynamoDB-Tabelle.

Das Szenario

In diesem Beispiel verwenden Sie eine Reihe von Modulen von Node.js zum Lesen und Schreiben eines Elements in einer DynamoDB-Tabelle, indem Sie diese Methoden desDynamoDBClient-Klasse:

Erforderliche Aufgaben

Zum Einrichten und Ausführen dieses Beispiels schließen Sie zunächst diese Aufgaben ab:

  • Richten Sie die Projektumgebung ein, um diese Node.js Beispiele auszuführen, und installieren Sie die erforderlichenAWS SDK for JavaScriptDrittanbieter-Module. Folgen Sie den Anweisungen fürGitHubaus.

  • Erstellen Sie eine freigegebene Konfigurationsdatei mit Ihren Anmeldeinformationen. Weitere Informationen zum Bereitstellen einer Datei mit gemeinsam genutzten Anmeldeinformationen finden Sie unter Laden der Anmeldeinformationen in Node.js aus der Datei mit gemeinsamen -Anmeld.

  • Erstellen Sie eine DynamoDB-Tabelle, auf deren Elemente Sie zugreifen können. Weitere Informationen zum Erstellen einer DynamoDB-Tabelle finden Sie unterErstellen und Verwenden von Tabellen in DynamoDBaus.

Wichtig

Diese Beispiele verwenden ECMASCRIPT6 (ES6). Dies erfordert Node.js Version 13.x oder höher. Informationen zum Herunterladen der neuesten Version von Node.js finden Sie unterNode.js wird heruntergeladen.aus.

Wenn Sie jedoch lieber CommonJS-Sytax verwenden möchten, lesen Sie bitteJavaScript ES6/CommonJS-Syntax

Schreiben eines Elements

Erstellen eineslibsErstellen Sie ein Modul Node.js mit dem DateinamenddbClient.jsaus. Kopieren Sie den folgenden Code und fügen Sie ihn ein, wodurch das DynamoDB-Clientobjekt erstellt wird. ErsetzenREGIONmit IhrerAWSRegion.

// Create service client module using ES6 syntax. import { DynamoDBClient } from "@aws-sdk/client-dynamodb"; // Set the AWS Region. const REGION = "REGION"; //e.g. "us-east-1" // Create an Amazon DynamoDB service client object. const ddbClient = new DynamoDBClient({ region: REGION }); export { ddbClient };

Dieser Code ist verfügbarhier auf GitHubaus.

Erstellen Sie ein Node.js-Modul mit dem Dateinamen ddb_putitem.js. Stellen Sie sicher, dass Sie das SDK, wie zuvor dargestellt, konfigurieren, einschließlich des Herunterladens der erforderlichen Clients und Pakete. Um auf DynamoDB zuzugreifen, erstellen Sie eineDynamoDBClient-Serviceobjekt. Erstellen Sie ein JSON-Objekt mit den erforderlichen Parametern für das Hinzufügen eines Elements, das in diesem Beispiel den Namen der Tabelle und eine Map beinhaltet, die die festzulegenden Attribute und Werte für jedes Attribut definiert. Rufen Sie diePutItemCommand-Methode des DynamoDB-Client-Serviceobjekts.

Anmerkung

ErsetzenTABLE_NAMEMit dem Namen der Tabelle zurück.

Anmerkung

Das folgende Codebeispiel schreibt in eine Tabelle mit einem Primärschlüssel, der nur aus einem Teilschlüssel besteht -CUSTOMER_ID- und ein Sortierschlüssel -CUSTOMER_NAMEaus. Wenn der Primärschlüssel der Tabelle nur aus einem Partitionsschlüssel besteht, geben Sie nur den Partitionsschlüssel an.

// Import required AWS SDK clients and commands for Node.js import { PutItemCommand } from "@aws-sdk/client-dynamodb"; import { ddbClient } from "./libs/ddbClient.js"; // Set the parameters export const params = { TableName: "TABLE_NAME", Item: { CUSTOMER_ID: { N: "001" }, CUSTOMER_NAME: { S: "Richard Roe" }, }, }; export const run = async () => { try { const data = await ddbClient.send(new PutItemCommand(params)); console.log(data); return data; } catch (err) { console.error(err); } }; run();

Geben Sie an der Eingabeaufforderung Folgendes bei der Eingabeaufforderung ein.

node ddb_putitem.js

Diesen Beispiel-Code finden Siehier auf GitHubaus.

Abrufen eines Elements

Erstellen eineslibsErstellen Sie ein Modul Node.js mit dem DateinamenddbClient.jsaus. Kopieren Sie den folgenden Code und fügen Sie ihn ein, wodurch das DynamoDB-Clientobjekt erstellt wird. ErsetzenREGIONmit IhrerAWSRegion.

// Create service client module using ES6 syntax. import { DynamoDBClient } from "@aws-sdk/client-dynamodb"; // Set the AWS Region. const REGION = "REGION"; //e.g. "us-east-1" // Create an Amazon DynamoDB service client object. const ddbClient = new DynamoDBClient({ region: REGION }); export { ddbClient };

Dieser Code ist verfügbarhier auf GitHubaus.

Erstellen Sie ein Node.js-Modul mit dem Dateinamen ddb_getitem.js. Stellen Sie sicher, dass Sie das SDK, wie zuvor dargestellt, konfigurieren, einschließlich des Herunterladens der erforderlichen Clients und Pakete. Um auf DynamoDB zuzugreifen, erstellen Sie eineDynamoDBClient-Serviceobjekt. Zum Identifizieren des abzurufenden Elements müssen Sie den Wert des Primärschlüssels für dieses Element in der Tabelle angeben. Die GetItemCommand-Methode gibt standardmäßig alle Attributwerte zurück, die für das Element definiert sind. Um nur eine Teilmenge aller möglichen Attributwerte abzurufen, geben Sie einen Projektionsausdruck an.

Erstellen Sie ein JSON-Objekt mit den erforderlichen Parametern für das Abrufen eines Elements, das in diesem Beispiel den Namen der Tabelle, den Namen und Wert des Schlüssels für das abzurufende Element und einen Projektionsausdruck beinhaltet, der das abzurufende Elementattribut identifiziert. Rufen Sie dieGetItemCommand-Methode des DynamoDB-Client-Serviceobjekts.

Anmerkung

ErsetzenTABLE_NAMEMit dem Namen der Tabelle zurück,KEY_NAMEMit dem Primärschlüssel der Tabelle zurück,KEY_NAME_VALUEmit dem Wert der Primärschlüsselzeile, die den Attributwert enthält, undATTRIBUTE_NAMEder Name der Attributspalte, die den Attributwert enthält.

Im folgenden Codebeispiel wird ein Element aus einer Tabelle mit einem Primärschlüssel abgerufen, der nur aus einem Teilungsschlüssel besteht -KEY_NAME- und nicht von einem Teilungs- und Sortierschlüssel. Wenn die Tabelle einen Primärschlüssel enthält, der aus einem Partitionsschlüssel und einem Sortierschlüssel besteht, müssen Sie auch den Namen und das Attribut des Sortierschlüssels angeben.

// Import required AWS SDK clients and commands for Node.js import { GetItemCommand } from "@aws-sdk/client-dynamodb"; import { ddbClient } from "./libs/ddbClient.js"; // Set the parameters export const params = { TableName: "TABLE_NAME", //TABLE_NAME Key: { KEY_NAME: { N: "KEY_VALUE" }, }, ProjectionExpression: "ATTRIBUTE_NAME", }; export const run = async () => { const data = await ddbClient.send(new GetItemCommand(params)); return data; console.log("Success", data.Item); }; run();

Geben Sie an der Eingabeaufforderung Folgendes bei der Eingabeaufforderung ein.

node ddb_getitem.js

Diesen Beispiel-Code finden Siehier auf GitHubaus.

Löschen eines Elements

Erstellen eineslibsErstellen Sie ein Modul Node.js mit dem DateinamenddbClient.jsaus. Kopieren Sie den folgenden Code und fügen Sie ihn ein, wodurch das DynamoDB-Clientobjekt erstellt wird. ErsetzenREGIONmit IhrerAWSRegion.

// Create service client module using ES6 syntax. import { DynamoDBClient } from "@aws-sdk/client-dynamodb"; // Set the AWS Region. const REGION = "REGION"; //e.g. "us-east-1" // Create an Amazon DynamoDB service client object. const ddbClient = new DynamoDBClient({ region: REGION }); export { ddbClient };

Dieser Code ist verfügbarhier auf GitHubaus.

Erstellen Sie ein Node.js-Modul mit dem Dateinamen ddb_deleteitem.js. Stellen Sie sicher, dass Sie das SDK, wie zuvor dargestellt, konfigurieren, einschließlich des Herunterladens der erforderlichen Clients und Pakete. Um auf DynamoDB zuzugreifen, erstellen Sie eineDynamoDBClient-Serviceobjekt. Erstellen Sie ein JSON-Objekt mit den erforderlichen Parametern zum Löschen eines Elements, das in diesem Beispiel den Namen der Tabelle und den Schlüsselnamen sowie den Wert für das zu löschende Element beinhaltet. Rufen Sie dieDeleteItemCommand-Methode des DynamoDB-Client-Serviceobjekts.

Anmerkung

ErsetzenTABLE_NAMEMit dem Namen der Tabelle zurück.

Anmerkung

Im folgenden Codebeispiel wird ein Element mit einem Primärschlüssel gelöscht, der nur aus einem Teilschlüssel besteht -KEY_NAME- und nicht von einem Teilungs- und Sortierschlüssel. Wenn die Tabelle einen Primärschlüssel enthält, der aus einem Partitionsschlüssel und einem Sortierschlüssel besteht, müssen Sie auch den Namen und das Attribut des Sortierschlüssels angeben.

// Import required AWS SDK clients and commands for Node.js import { DeleteItemCommand } from "@aws-sdk/client-dynamodb"; import { ddbClient } from "./libs/ddbClient.js"; // Set the parameters export const params = { TableName: "CUSTOMER_LIST_NEWEST", Key: { CUSTOMER_ID: { N: "1" }, }, }; export const run = async () => { try { const data = await ddbClient.send(new DeleteItemCommand(params)); console.log("Success, item deleted", data); return data; } catch (err) { console.log("Error", err); /*if (err && err.code === "ResourceNotFoundException") { console.log("Error: Table not found"); } else if (err && err.code === "ResourceInUseException") { console.log("Error: Table in use"); }*/ } }; run();

Geben Sie an der Eingabeaufforderung Folgendes bei der Eingabeaufforderung ein.

node ddb_deleteitem.js

Diesen Beispiel-Code finden Siehier auf GitHubaus.