DynamoDB の表の作成と使用 - AWS SDK for JavaScript

AWS SDK for JavaScript V3 API リファレンスガイドでは、 AWS SDK for JavaScript バージョン3 (V3) のすべての API オペレーションについて詳しく説明します。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

DynamoDB の表の作成と使用

JavaScript code example that applies to Node.js execution

この Node.js コード例は以下を示しています。

  • DynamoDB からデータを保存および取得するために使用されるテーブルを作成および管理する方法。

シナリオ

他のデータベース管理システムと同様、DynamoDB はデータをテーブルに保存します。DynamoDB テーブルは、行に相当する項目に整理されたデータの集まりです。DynamoDB, にデータを保存またはアクセスするには、テーブルを作成して使用します。

この例では、一連の Node.js モジュールを使用して DynamoDB テーブルで基本的な操作を実行します。このコードは、 の SDK JavaScript を使用して、DynamoDBクライアントクラスの次のメソッドを使用してテーブルを作成し、操作します。

前提条件タスク

この例をセットアップして実行するには、まず次のタスクを完了します。

  • これらの Node.js の例を実行するようにプロジェクト環境を設定し、必要な AWS SDK for JavaScript およびサードパーティモジュールをインストールします。「」の指示に従ってください GitHub

  • SDK for JavaScript DynamoDB クライアントをインストールします。詳細については、「バージョン 3 の新機能とは」を参照してください。

  • ユーザーの認証情報を使用して、共有設定ファイルを作成します。共有認証情報ファイルの提供の詳細については、「AWS SDK とツールのリファレンスガイド」の「共有設定ファイルおよび認証情報ファイル」を参照してください。

重要

これらの例では ECMAScript6 (ES6) を使用しています。これには Node.js バージョン 13.x 以降が必要です。Node.js の最新バージョンをダウンロードしてインストールするには、「Node.js ダウンロード」を参照してください。

ただし、CommonJS 構文を使用したい場合は、「JavaScript ES6/CommonJS 構文」を参照してください。

注記

これらの例で使用されているデータ型の詳細については、「Amazon DynamoDB でサポートされるデータ型と命名規則」を参照してください。

テーブルの作成

create-table.js というファイル名で Node.js モジュールを作成します。前述のように、必要なクライアントとパッケージのダウンロードに含めて、SDK が設定されていることを確認します。DynamoDB にアクセスするには、DynamoDBクライアントサービスオブジェクトを作成します。テーブルの作成に必要なパラメータを含む JSON オブジェクトを作成します。この例では、各属性の名前とデータ型、キースキーマ、テーブル名、およびプロビジョニングのスループットの単位が含まれています。DynamoDB サービスオブジェクトの CreateTableCommand メソッドを呼び出します。

import { CreateTableCommand, DynamoDBClient } from "@aws-sdk/client-dynamodb"; const client = new DynamoDBClient({}); export const main = async () => { const command = new CreateTableCommand({ TableName: "EspressoDrinks", // For more information about data types, // see https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.NamingRulesDataTypes.html#HowItWorks.DataTypes and // https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Programming.LowLevelAPI.html#Programming.LowLevelAPI.DataTypeDescriptors AttributeDefinitions: [ { AttributeName: "DrinkName", AttributeType: "S", }, ], KeySchema: [ { AttributeName: "DrinkName", KeyType: "HASH", }, ], ProvisionedThroughput: { ReadCapacityUnits: 1, WriteCapacityUnits: 1, }, }); const response = await client.send(command); console.log(response); return response; };

この例を実行するには、コマンドプロンプトで以下を入力します。

node create-table.js

このサンプルコードは、 にあります GitHub

表の一覧を表示します

list-tables.js というファイル名で Node.js モジュールを作成します。前述のように、必要なクライアントとパッケージのダウンロードに含めて、SDK が設定されていることを確認します。DynamoDB にアクセスするには、DynamoDBクライアントサービスオブジェクトを作成します。テーブルをリストするために必要なパラメータを含む JSON オブジェクトを作成します。この例では、リストされるテーブルの数を 10 に制限します。DynamoDB サービスオブジェクトの ListTablesCommand メソッドを呼び出します。

import { ListTablesCommand, DynamoDBClient } from "@aws-sdk/client-dynamodb"; const client = new DynamoDBClient({}); export const main = async () => { const command = new ListTablesCommand({}); const response = await client.send(command); console.log(response); return response; };

この例を実行するには、コマンドプロンプトで以下を入力します。

node list-tables.js

このサンプルコードは、 にあります GitHub

表の説明

describe-table.js というファイル名で Node.js モジュールを作成します。前述のように、必要なクライアントとパッケージのダウンロードに含めて、SDK が設定されていることを確認します。DynamoDB にアクセスするには、DynamoDBクライアントサービスオブジェクトを作成します。DescribeTableCommandDynamoDB クライアントサービスオブジェクトのメソッドを記述するために必要なパラメータを含む JSON オブジェクトを作成します。

import { DescribeTableCommand, DynamoDBClient } from "@aws-sdk/client-dynamodb"; const client = new DynamoDBClient({}); export const main = async () => { const command = new DescribeTableCommand({ TableName: "Pastries", }); const response = await client.send(command); console.log(`TABLE NAME: ${response.Table.TableName}`); console.log(`TABLE ITEM COUNT: ${response.Table.ItemCount}`); return response; };

この例を実行するには、コマンドプロンプトで以下を入力します。

node describe-table.js

このサンプルコードは、 にあります GitHub

テーブルの削除

delete-table.js というファイル名で Node.js モジュールを作成します。前述のように、必要なクライアントとパッケージのダウンロードに含めて、SDK が設定されていることを確認します。DynamoDB にアクセスするには、DynamoDBクライアントサービスオブジェクトを作成します。テーブルを削除するために必要なパラメータを含む JSON オブジェクトを作成します。この例では、コマンドラインパラメータとして提供されたテーブルの名前が含まれています。DynamoDB サービスオブジェクトの DeleteTableCommand メソッドを呼び出します。

import { DeleteTableCommand, DynamoDBClient } from "@aws-sdk/client-dynamodb"; const client = new DynamoDBClient({}); export const main = async () => { const command = new DeleteTableCommand({ TableName: "DecafCoffees", }); const response = await client.send(command); console.log(response); return response; };

この例を実行するには、コマンドプロンプトで以下を入力します。

node delete-table.js

このサンプルコードは、 にあります GitHub