DynamoDB examples using SDK for JavaScript (v2) (original) (raw)
The following code examples show you how to perform actions and implement common scenarios by using the AWS SDK for JavaScript (v2) with DynamoDB.
Actions are code excerpts from larger programs and must be run in context. While actions show you how to call individual service functions, you can see actions in context in their related scenarios.
Scenarios are code examples that show you how to accomplish specific tasks by calling multiple functions within a service or combined with other AWS services.
Each example includes a link to the complete source code, where you can find instructions on how to set up and run the code in context.
Actions
The following code example shows how to use BatchGetItem
.
SDK for JavaScript (v2)
// Load the AWS SDK for Node.js
var AWS = require("aws-sdk");
// Set the region
AWS.config.update({ region: "REGION" });
// Create DynamoDB service object
var ddb = new AWS.DynamoDB({ apiVersion: "2012-08-10" });
var params = {
RequestItems: {
TABLE_NAME: {
Keys: [
{ KEY_NAME: { N: "KEY_VALUE_1" } },
{ KEY_NAME: { N: "KEY_VALUE_2" } },
{ KEY_NAME: { N: "KEY_VALUE_3" } },
],
ProjectionExpression: "KEY_NAME, ATTRIBUTE",
},
},
};
ddb.batchGetItem(params, function (err, data) {
if (err) {
console.log("Error", err);
} else {
data.Responses.TABLE_NAME.forEach(function (element, index, array) {
console.log(element);
});
}
});
- For more information, see AWS SDK for JavaScript Developer Guide.
- For API details, seeBatchGetItem in AWS SDK for JavaScript API Reference.
The following code example shows how to use BatchWriteItem
.
SDK for JavaScript (v2)
// Load the AWS SDK for Node.js
var AWS = require("aws-sdk");
// Set the region
AWS.config.update({ region: "REGION" });
// Create DynamoDB service object
var ddb = new AWS.DynamoDB({ apiVersion: "2012-08-10" });
var params = {
RequestItems: {
TABLE_NAME: [
{
PutRequest: {
Item: {
KEY: { N: "KEY_VALUE" },
ATTRIBUTE_1: { S: "ATTRIBUTE_1_VALUE" },
ATTRIBUTE_2: { N: "ATTRIBUTE_2_VALUE" },
},
},
},
{
PutRequest: {
Item: {
KEY: { N: "KEY_VALUE" },
ATTRIBUTE_1: { S: "ATTRIBUTE_1_VALUE" },
ATTRIBUTE_2: { N: "ATTRIBUTE_2_VALUE" },
},
},
},
],
},
};
ddb.batchWriteItem(params, function (err, data) {
if (err) {
console.log("Error", err);
} else {
console.log("Success", data);
}
});
- For more information, see AWS SDK for JavaScript Developer Guide.
- For API details, seeBatchWriteItem in AWS SDK for JavaScript API Reference.
The following code example shows how to use CreateTable
.
SDK for JavaScript (v2)
// Load the AWS SDK for Node.js
var AWS = require("aws-sdk");
// Set the region
AWS.config.update({ region: "REGION" });
// Create the DynamoDB service object
var ddb = new AWS.DynamoDB({ apiVersion: "2012-08-10" });
var params = {
AttributeDefinitions: [
{
AttributeName: "CUSTOMER_ID",
AttributeType: "N",
},
{
AttributeName: "CUSTOMER_NAME",
AttributeType: "S",
},
],
KeySchema: [
{
AttributeName: "CUSTOMER_ID",
KeyType: "HASH",
},
{
AttributeName: "CUSTOMER_NAME",
KeyType: "RANGE",
},
],
ProvisionedThroughput: {
ReadCapacityUnits: 1,
WriteCapacityUnits: 1,
},
TableName: "CUSTOMER_LIST",
StreamSpecification: {
StreamEnabled: false,
},
};
// Call DynamoDB to create the table
ddb.createTable(params, function (err, data) {
if (err) {
console.log("Error", err);
} else {
console.log("Table Created", data);
}
});
- For more information, see AWS SDK for JavaScript Developer Guide.
- For API details, seeCreateTable in AWS SDK for JavaScript API Reference.
The following code example shows how to use DeleteItem
.
SDK for JavaScript (v2)
Delete an item from a table.
// Load the AWS SDK for Node.js
var AWS = require("aws-sdk");
// Set the region
AWS.config.update({ region: "REGION" });
// Create the DynamoDB service object
var ddb = new AWS.DynamoDB({ apiVersion: "2012-08-10" });
var params = {
TableName: "TABLE",
Key: {
KEY_NAME: { N: "VALUE" },
},
};
// Call DynamoDB to delete the item from the table
ddb.deleteItem(params, function (err, data) {
if (err) {
console.log("Error", err);
} else {
console.log("Success", data);
}
});
Delete an item from a table using the DynamoDB document client.
// Load the AWS SDK for Node.js
var AWS = require("aws-sdk");
// Set the region
AWS.config.update({ region: "REGION" });
// Create DynamoDB document client
var docClient = new AWS.DynamoDB.DocumentClient({ apiVersion: "2012-08-10" });
var params = {
Key: {
HASH_KEY: VALUE,
},
TableName: "TABLE",
};
docClient.delete(params, function (err, data) {
if (err) {
console.log("Error", err);
} else {
console.log("Success", data);
}
});
- For more information, see AWS SDK for JavaScript Developer Guide.
- For API details, seeDeleteItem in AWS SDK for JavaScript API Reference.
The following code example shows how to use DeleteTable
.
SDK for JavaScript (v2)
// Load the AWS SDK for Node.js
var AWS = require("aws-sdk");
// Set the region
AWS.config.update({ region: "REGION" });
// Create the DynamoDB service object
var ddb = new AWS.DynamoDB({ apiVersion: "2012-08-10" });
var params = {
TableName: process.argv[2],
};
// Call DynamoDB to delete the specified table
ddb.deleteTable(params, function (err, data) {
if (err && err.code === "ResourceNotFoundException") {
console.log("Error: Table not found");
} else if (err && err.code === "ResourceInUseException") {
console.log("Error: Table in use");
} else {
console.log("Success", data);
}
});
- For more information, see AWS SDK for JavaScript Developer Guide.
- For API details, seeDeleteTable in AWS SDK for JavaScript API Reference.
The following code example shows how to use DescribeTable
.
SDK for JavaScript (v2)
// Load the AWS SDK for Node.js
var AWS = require("aws-sdk");
// Set the region
AWS.config.update({ region: "REGION" });
// Create the DynamoDB service object
var ddb = new AWS.DynamoDB({ apiVersion: "2012-08-10" });
var params = {
TableName: process.argv[2],
};
// Call DynamoDB to retrieve the selected table descriptions
ddb.describeTable(params, function (err, data) {
if (err) {
console.log("Error", err);
} else {
console.log("Success", data.Table.KeySchema);
}
});
- For more information, see AWS SDK for JavaScript Developer Guide.
- For API details, seeDescribeTable in AWS SDK for JavaScript API Reference.
The following code example shows how to use GetItem
.
SDK for JavaScript (v2)
Get an item from a table.
// Load the AWS SDK for Node.js
var AWS = require("aws-sdk");
// Set the region
AWS.config.update({ region: "REGION" });
// Create the DynamoDB service object
var ddb = new AWS.DynamoDB({ apiVersion: "2012-08-10" });
var params = {
TableName: "TABLE",
Key: {
KEY_NAME: { N: "001" },
},
ProjectionExpression: "ATTRIBUTE_NAME",
};
// Call DynamoDB to read the item from the table
ddb.getItem(params, function (err, data) {
if (err) {
console.log("Error", err);
} else {
console.log("Success", data.Item);
}
});
Get an item from a table using the DynamoDB document client.
// Load the AWS SDK for Node.js
var AWS = require("aws-sdk");
// Set the region
AWS.config.update({ region: "REGION" });
// Create DynamoDB document client
var docClient = new AWS.DynamoDB.DocumentClient({ apiVersion: "2012-08-10" });
var params = {
TableName: "EPISODES_TABLE",
Key: { KEY_NAME: VALUE },
};
docClient.get(params, function (err, data) {
if (err) {
console.log("Error", err);
} else {
console.log("Success", data.Item);
}
});
- For more information, see AWS SDK for JavaScript Developer Guide.
- For API details, seeGetItem in AWS SDK for JavaScript API Reference.
The following code example shows how to use ListTables
.
SDK for JavaScript (v2)
// Load the AWS SDK for Node.js
var AWS = require("aws-sdk");
// Set the region
AWS.config.update({ region: "REGION" });
// Create the DynamoDB service object
var ddb = new AWS.DynamoDB({ apiVersion: "2012-08-10" });
// Call DynamoDB to retrieve the list of tables
ddb.listTables({ Limit: 10 }, function (err, data) {
if (err) {
console.log("Error", err.code);
} else {
console.log("Table names are ", data.TableNames);
}
});
- For more information, see AWS SDK for JavaScript Developer Guide.
- For API details, seeListTables in AWS SDK for JavaScript API Reference.
The following code example shows how to use PutItem
.
SDK for JavaScript (v2)
Put an item in a table.
// Load the AWS SDK for Node.js
var AWS = require("aws-sdk");
// Set the region
AWS.config.update({ region: "REGION" });
// Create the DynamoDB service object
var ddb = new AWS.DynamoDB({ apiVersion: "2012-08-10" });
var params = {
TableName: "CUSTOMER_LIST",
Item: {
CUSTOMER_ID: { N: "001" },
CUSTOMER_NAME: { S: "Richard Roe" },
},
};
// Call DynamoDB to add the item to the table
ddb.putItem(params, function (err, data) {
if (err) {
console.log("Error", err);
} else {
console.log("Success", data);
}
});
Put an item in a table using the DynamoDB document client.
// Load the AWS SDK for Node.js
var AWS = require("aws-sdk");
// Set the region
AWS.config.update({ region: "REGION" });
// Create DynamoDB document client
var docClient = new AWS.DynamoDB.DocumentClient({ apiVersion: "2012-08-10" });
var params = {
TableName: "TABLE",
Item: {
HASHKEY: VALUE,
ATTRIBUTE_1: "STRING_VALUE",
ATTRIBUTE_2: VALUE_2,
},
};
docClient.put(params, function (err, data) {
if (err) {
console.log("Error", err);
} else {
console.log("Success", data);
}
});
- For more information, see AWS SDK for JavaScript Developer Guide.
- For API details, seePutItem in AWS SDK for JavaScript API Reference.
The following code example shows how to use Query
.
SDK for JavaScript (v2)
// Load the AWS SDK for Node.js
var AWS = require("aws-sdk");
// Set the region
AWS.config.update({ region: "REGION" });
// Create DynamoDB document client
var docClient = new AWS.DynamoDB.DocumentClient({ apiVersion: "2012-08-10" });
var params = {
ExpressionAttributeValues: {
":s": 2,
":e": 9,
":topic": "PHRASE",
},
KeyConditionExpression: "Season = :s and Episode > :e",
FilterExpression: "contains (Subtitle, :topic)",
TableName: "EPISODES_TABLE",
};
docClient.query(params, function (err, data) {
if (err) {
console.log("Error", err);
} else {
console.log("Success", data.Items);
}
});
- For more information, see AWS SDK for JavaScript Developer Guide.
- For API details, seeQuery in AWS SDK for JavaScript API Reference.
The following code example shows how to use Scan
.
SDK for JavaScript (v2)
// Load the AWS SDK for Node.js.
var AWS = require("aws-sdk");
// Set the AWS Region.
AWS.config.update({ region: "REGION" });
// Create DynamoDB service object.
var ddb = new AWS.DynamoDB({ apiVersion: "2012-08-10" });
const params = {
// Specify which items in the results are returned.
FilterExpression: "Subtitle = :topic AND Season = :s AND Episode = :e",
// Define the expression attribute value, which are substitutes for the values you want to compare.
ExpressionAttributeValues: {
":topic": { S: "SubTitle2" },
":s": { N: 1 },
":e": { N: 2 },
},
// Set the projection expression, which are the attributes that you want.
ProjectionExpression: "Season, Episode, Title, Subtitle",
TableName: "EPISODES_TABLE",
};
ddb.scan(params, function (err, data) {
if (err) {
console.log("Error", err);
} else {
console.log("Success", data);
data.Items.forEach(function (element, index, array) {
console.log(
"printing",
element.Title.S + " (" + element.Subtitle.S + ")"
);
});
}
});
- For more information, see AWS SDK for JavaScript Developer Guide.
- For API details, seeScan in AWS SDK for JavaScript API Reference.
Scenarios
The following code example shows how to invoke an AWS Lambda function from a browser.
SDK for JavaScript (v2)
You can create a browser-based application that uses an AWS Lambda function to update an Amazon DynamoDB table with user selections.
For complete source code and instructions on how to set up and run, see the full example onGitHub.
Services used in this example
- DynamoDB
- Lambda
CloudWatch Logs
EventBridge
Did this page help you? - Yes
Thanks for letting us know we're doing a good job!
If you've got a moment, please tell us what we did right so we can do more of it.
Did this page help you? - No
Thanks for letting us know this page needs work. We're sorry we let you down.
If you've got a moment, please tell us how we can make the documentation better.