Support of DynamoDB for Node.js - JavaScript

Objects

Icon Description
Node.js DynamoDB Endpoint
Node.jsDynamoDB Table

DynamoDB API

Link Type Function api v2 Commands from SDK V3 imported from ‘@aws-sdk/client-dynamodb’
No Link createGlobalTable
createTable
-
useSelectLink createBackup
getItem
batchGetItem
transactWriteItems
batchWriteItem
restoreTableToPointInTime
CreateTableCommand
BatchGetItemCommand
GetItemCommand
useDeleteLink deleteTable
deleteItem
transactWriteItems
batchWriteItem
DeleteTableCommand
DeleteItemCommand
useUpdateLink transactWriteItems
batchWriteItem
updateItem
updateTable
putItem
restoreTableToPointInTime
restoreTableFromBackup
PutItemCommand
UpdateItemCommand
UpdateCommand

DocumentClient

Link Type Function api v2
useSelectLink batchGet
transactGet
get
scan
query
batchWrite
transactWrite
useDeleteLink batchWrite
transactWrite
delete
useUpdateLink put
update
batchWrite
transactWrite

API: Commands from SDK V3

imported from '@aws-sdk/client-dynamodb'
Link Type Function
No Link

CreateGlobalTableCommand

CreateTableCommand

useSelectLink

CreateBackupCommand

GetItemCommand

BatchGetItemCommand

TransactGetItemsCommand

RestoreTableToPointInTimeCommand

useDeleteLink

DeleteItemCommand

DeleteTableCommand

TransactWriteItemsCommand

BatchWriteItemCommand

useUpdateLink

TransactWriteItemsCommand

BatchWriteItemCommand

UpdateItemCommand

CreateBackupCommand

UpdateTableCommand

PutItemCommand

RestoreTableFromBackupCommand

Code samples

API v2 sample

These declaration will establish a connection to the database located on localhost:

var AWS = require("aws-sdk");

AWS.config.update({
  region: "us-west-2",
  endpoint: "http://localhost:8000"
});

var dynamodb = new AWS.DynamoDB();

These declarations will create a useUpdateLink from code to the database “myDatabase”:

/* This example adds a new item to the Music table. */

var params = {
  Item: {
    "AlbumTitle": {
      S: "Somewhat Famous"
    }, 
    "Artist": {
      S: "No One You Know"
    }, 
    "SongTitle": {
      S: "Call Me Today"
    }
  }, 
  ReturnConsumedCapacity: "TOTAL", 
  TableName: "Music"
};
dynamodb.putItem(params, function(err, data) {
  if (err) console.log(err, err.stack); // an error occurred
  else     console.log(data);           // successful response
});

What results can you expect?

Api v3 sample

These declaration swill establish a connection to the database located on localhost, create two tables, and create links:

const {DynamoDBClient} = require("@aws-sdk/client-dynamodb");
const REGION = "us-east-1";
const ddbClient = new DynamoDBClient({region: REGION,
                                      endpoint: "http://localhost:8000" });
export { ddbClient };

const {CreateTableCommand} = require("@aws-sdk/client-dynamodb");
const {PutItemCommand } = require("@aws-sdk/client-dynamodb");
const {DeleteTableCommand } = require("@aws-sdk/client-dynamodb");

// Set the parameters
export const params_put = {
  TableName: "TABLE_NAME_2",
  Item: {
    CUSTOMER_ID: { N: "001" },
    CUSTOMER_NAME: { S: "Richard Roe" },
  },
};

export const create = async () => {
  try {
    const data = await ddbClient.send(new CreateTableCommand({TableName: "TABLE_NAME"}));
    console.log("Table Created", data);
    return data;
  } catch (err) {
    console.log("Error", err);
  }
};
create();

export const put_item = async () => {
  try {
    const data = await ddbClient.send(new PutItemCommand(params_put));
    console.log("Table Updated", data);
    return data;
  } catch (err) {
    console.log("Error", err);
  }
};
put_item();

export const delete_item = async () => {
  try {
    const data = await ddbClient.send(new DeleteTableCommand({TableName: "TABLE_NAME"}));
    console.log("Success, table deleted", data);
    return data;
  } catch (err) {
      console.log("Error", err);
    }
};
delete_item();