Erstellen und Verwenden von Tabellen in DynamoDB - 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.

Erstellen und Verwenden von Tabellen in DynamoDB

JavaScript code example that applies to Node.js execution

Dieses Node.js-Codebeispiel zeigt:

  • So erstellen und verwalten Sie Tabellen zum Speichern und Abrufen von Daten aus DynamoDB.

Das Szenario

Ebenso wie andere Datenbanksysteme speichert auch DynamoDB Daten in Tabellen. Eine DynamoDB-Tabelle ist eine Sammlung von Daten, die in Elementen vergleichbar mit Zeilen organisiert sind. Um Daten in DynamoDB zu speichern oder darauf zuzugreifen, erstellen Sie Tabellen und arbeiten mit ihnen.

In diesem Beispiel verwenden Sie eine Reihe von Modulen von Node.js zum Ausführen einfacher Operationen mit einer DynamoDB-Tabelle. Der Code verwendet das SDK für JavaScript zum Erstellen und Arbeiten mit Tabellen unter Verwendung dieser 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.

  • Installieren Sie SDK für JavaScript DynamoDB-Client. Weitere Informationen finden Sie unter Was ist neu in Version 3?.

  • 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.

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

Erstellen einer Tabelle

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.

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_createtable.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 Erstellen einer Tabelle, das in diesem Beispiel den Namen und Datentyp für jedes Attribut, das Schlüsselschema, den Namen der Tabelle und die Durchsatzeinheiten beinhaltet, die bereitgestellt werden sollen. Rufen Sie dieCreateTableCommand-Methode des DynamoDB-Serviceobjekts.

Anmerkung

ErsetzenTABLE_NAMEMit dem Namen der Tabelle zurück,ATTRIBUTE_NAME_1Mit dem Namen des Partitionsschlüssels,ATTRIBUTE_NAME_2Mit dem Namen des Sortierschlüssels (optional) undATTRIBUTE_TYPEmit dem Typ des Attributs (z. B. N [für eine Zahl], S [für eine Zeichenfolge] usw.).

Anmerkung

Der Primärschlüssel für die Tabelle besteht aus den folgenden Attributen:

  • Season

  • Episode

// Import required AWS SDK clients and commands for Node.js import { CreateTableCommand } from "@aws-sdk/client-dynamodb"; import { ddbClient } from "./libs/ddbClient.js"; // Set the parameters export const params = { AttributeDefinitions: [ { AttributeName: "Season", //ATTRIBUTE_NAME_1 AttributeType: "N", //ATTRIBUTE_TYPE }, { AttributeName: "Episode", //ATTRIBUTE_NAME_2 AttributeType: "N", //ATTRIBUTE_TYPE }, ], KeySchema: [ { AttributeName: "Season", //ATTRIBUTE_NAME_1 KeyType: "HASH", }, { AttributeName: "Episode", //ATTRIBUTE_NAME_2 KeyType: "RANGE", }, ], ProvisionedThroughput: { ReadCapacityUnits: 1, WriteCapacityUnits: 1, }, TableName: "TEST_TABLE", //TABLE_NAME StreamSpecification: { StreamEnabled: false, }, }; export const run = async () => { try { const data = await ddbClient.send(new CreateTableCommand(params)); console.log("Table Created", data); return data; } catch (err) { console.log("Error", err); } }; run();

Geben Sie an der Eingabeaufforderung Folgendes bei der Eingabeaufforderung ein.

node ddb_createtable.js

Diesen Beispiel-Code finden Siehier auf GitHubaus.

Auflisten von Tabellen

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_listtables.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 Auflisten Ihrer Tabellen, das in diesem Beispiel die Anzahl der aufgeführten Tabellen auf 10 begrenzt. Rufen Sie dieListTablesCommand-Methode des DynamoDB-Serviceobjekts.

// Import required AWS SDK clients and commands for Node.js import { ListTablesCommand } from "@aws-sdk/client-dynamodb"; import { ddbClient } from "./libs/ddbClient.js"; export const run = async () => { try { const data = await ddbClient.send(new ListTablesCommand({})); console.log(data); // console.log(data.TableNames.join("\n")); return data; } catch (err) { console.error(err); } }; run();

Geben Sie an der Eingabeaufforderung Folgendes bei der Eingabeaufforderung ein.

node ddb_listtables.js

Diesen Beispiel-Code finden Siehier auf GitHubaus.

Beschreiben einer Tabelle

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_describetable.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 die Beschreibung einesDescribeTableCommand-Methode des DynamoDB-Serviceobjekts.

Anmerkung

ErsetzenTABLE_NAMEMit dem Namen der Tabelle zurück.

// Import required AWS SDK clients and commands for Node.js import { DescribeTableCommand } from "@aws-sdk/client-dynamodb"; import { ddbClient } from "./libs/ddbClient.js"; // Set the parameters export const params = { TableName: "TABLE_NAME" }; //TABLE_NAME export const run = async () => { try { const data = await ddbClient.send(new DescribeTableCommand(params)); console.log("Success", data); // console.log("Success", data.Table.KeySchema); return data; } catch (err) { console.log("Error", err); } }; run();

Geben Sie an der Eingabeaufforderung Folgendes bei der Eingabeaufforderung ein.

node ddb_describetable.js

Diesen Beispiel-Code finden Siehier auf GitHubaus.

Löschen einer Tabelle

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.

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_deletetable.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 einer Tabelle, das in diesem Beispiel den Namen der Tabelle beinhaltet, der als Befehlszeilenparameter bereitgestellt wird. Rufen Sie dieDeleteTableCommand-Methode des DynamoDB-Serviceobjekts.

// Import required AWS SDK clients and commands for Node.js import { DeleteTableCommand } from "@aws-sdk/client-dynamodb"; import { ddbClient } from "./libs/ddbClient.js"; // Set the parameters export const params = { TableName: "CUSTOMER_LIST_NEW", }; export const run = async () => { try { const data = await ddbClient.send(new DeleteTableCommand(params)); console.log("Success, table deleted", data); return data; } catch (err) { console.log("Error", err); } }; run();

Geben Sie an der Eingabeaufforderung Folgendes bei der Eingabeaufforderung ein.

node ddb_deletetable.js

Diesen Beispiel-Code finden Siehier auf GitHubaus.