gpt4 book ai didi

node.js - 如何显示 DynamoDB 表的内容

转载 作者:太空宇宙 更新时间:2023-11-04 01:54:47 25 4
gpt4 key购买 nike

我的 DynamoDB 表具有以下属性

sales_id: hashkey
created_date: rangekey
sales_employee_id:IndexedHashKey

我正在尝试像在 MySQL 中一样获取 Sales 表的所有数据

  select * from Sales

如何查询 DynamoDB。我正在尝试使用以下 AWS CLI 查询,但每次都会失败并显示以下消息

aws dynamodb get-item --table-name Sales --key '{"sales_id":{"N":"1"}}'

下面是错误信息

An error occurred (ValidationException) when calling the GetItem operation: The provided key element does not match the schema

下面的 Node js 代码也会抛出相同的错误

  var getSalesDetails = function(user_id, callback) {

var params = {
TableName: "Sales",
Key:{
":sales_id":{"N":"1"},
":created_date":{"S": "2018-01-22"}
}
};
docClient.get(params, function(err, data) {
if (err) console.log(err); // an error occurred
else console.log(data); // successful response
});
};

最佳答案

假设您已经使用以下数据类型定义了关键属性,则以下代码应该可以工作。 docClient 应根据变量值自动派生数据类型。

sales_id: hashkey - Number

created_date: rangekey - String

删除了 Key 属性中提供的显式数据类型。

var params = {
TableName: "Sales",
Key:{
":sales_id": 1,
":created_date": "2018-01-22"
}
};
docClient.get(params, function(err, data) {
if (err) console.log(err); // an error occurred
else console.log(data); // successful response
});
};

关于node.js - 如何显示 DynamoDB 表的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48390645/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com