【发布时间】:2018-09-10 02:15:10
【问题描述】:
我在 dynamoDB 中有一个名为“Contributors”的表。我有一个主复合键,其中哈希键是“UserId”,排序键是“NoteId”。我想查询属于特定哈希键的所有项目。
现在,如果我使用 aws-cli,以下命令有效:
aws dynamodb query \
--table-name Contributors \
--key-condition-expression 'UserId = :UserId' \
--expression-attribute-values '{
":UserId": {"N":"2"}
}'
但是当我在 Node.js 中编写查询时,以下 2 个参数对象都不起作用:
var params = {
TableName: "Contributors",
KeyConditionExpression: "#UserId = :UserId",
ExpressionAttributeNames: {
"#UserId": "UserId"
},
ExpressionAttributeValues: {
":UserId": { "N": "2" }
}
};
或者这个:
var params = {
TableName: "Contributors",
KeyConditionExpression: "#UserId = :UserId",
ExpressionAttributeNames: {
"#UserId": "UserId"
},
ExpressionAttributeValues: {
":UserId": "2"
}
};
我收到以下错误:
ValidationException:一个或多个参数值无效: 条件参数类型与架构类型不匹配
正确的参数对象应该是什么?
【问题讨论】:
标签: node.js amazon-web-services amazon-dynamodb