【发布时间】:2015-10-28 05:51:09
【问题描述】:
我正在执行“DynamoDB 入门指南”http://docs.aws.amazon.com/amazondynamodb/latest/gettingstartedguide/GettingStarted.JsShell.05.html#GettingStarted.JsShell.05.01 的第 5.1 步,但被一个无效示例阻止。
var params = {
TableName: "Music",
KeyConditionExpression: "Artist = :artist",
ExpressionAttributeValues: {
":artist": "No One You Know"
}
};
dynamodb.query(params, function(err, data) {
if (err)
console.log(JSON.stringify(err, null, 2));
else
console.log(JSON.stringify(data, null, 2));
});
shell 接受输入但产生错误
{
"message": "There were 2 validation errors:\n* MissingRequiredParameter: Missing required key 'KeyConditions' in params\n* UnexpectedParameter: Unexpected key 'KeyConditionExpression' found in params",
"code": "MultipleValidationErrors",
"errors": [
{
"message": "Missing required key 'KeyConditions' in params",
"code": "MissingRequiredParameter",
"time": "2015-10-27T03:08:56.504Z"
},
{
"message": "Unexpected key 'KeyConditionExpression' found in params",
"code": "UnexpectedParameter",
"time": "2015-10-27T03:08:56.504Z"
}
],
"time": "2015-10-27T03:08:56.504Z"
}
我尝试在 'KeyConditions' 中对 'ExpressionAttributeValues' 进行 sub'ing...
var params = {
TableName: "Music",
KeyConditionExpression: "Artist = :artist",
KeyConditions: {
":artist": "No One You Know"
}
};
dynamodb.query(params, function(err, data) {
if (err)
console.log(JSON.stringify(err, null, 2));
else
console.log(JSON.stringify(data, null, 2));
});
...但这只会产生空结果{}。当然,“音乐”中的某些项目的“艺术家”属性设置为“你不认识的人”,所以我有点不知道如何在此处继续。
在 DDB 中查询 Artist 属性中的值“No One You Know”的正确表达式是什么?
【问题讨论】:
标签: amazon-web-services amazon-dynamodb