Amazon web services AWS:当我试图更新dynamodb中的一个项时,出现了以下错误:提供的键元素与架构不匹配
当我尝试更新dynamodb中的项目时,出现以下错误:Amazon web services AWS:当我试图更新dynamodb中的一个项时,出现了以下错误:提供的键元素与架构不匹配,amazon-web-services,amazon-dynamodb,Amazon Web Services,Amazon Dynamodb,当我尝试更新dynamodb中的项目时,出现以下错误: var docClient = new AWS.DynamoDB.DocumentClient(); function updateItem() { var table = "Bicycle"; var params = { TableName:table, Key:{ warrantyDate: "2018/10/23", warranty
var docClient = new AWS.DynamoDB.DocumentClient();
function updateItem() {
var table = "Bicycle";
var params = {
TableName:table,
Key:{
warrantyDate: "2018/10/23",
warrantyStatus: "Active"
},
UpdateExpression: "set warrantyStatus = :r",
ExpressionAttributeValues:{
":r":"Inactive"
},
ReturnValues:"UPDATED_NEW"
};
docClient.update(params, function(err, data) {
if (err) {
alert("Unable to update item");
alert(err);
} else {
alert("UpdateItem succeeded");
}
});
}
调用此函数时,我收到以下异常:
ValidationException:提供的键元素与架构不匹配
如何修复此问题?问题在于,您的键属性值与dynamodb表上的主分区键不匹配 更新项目时,需要指定映射到dynamodb表上主键的单键。键字段中应该只有一个属性。您正试图找到一个键,该键既是保修日期又是保修状态。确保指定了映射到dynamodb配置的正确密钥
如果您试图更新多个项目,则需要使用另一个函数,如doClient.update()仅更新与表上的主索引匹配的键的单行 问题在于,您的KEY属性值与dynamodb表上的主分区键不匹配 更新项目时,需要指定映射到dynamodb表上主键的单键。键字段中应该只有一个属性。您正试图找到一个键,该键既是保修日期又是保修状态。确保指定了映射到dynamodb配置的正确密钥 如果您试图更新多个项目,则需要使用另一个函数,如doClient.update()仅更新与表上的主索引匹配的键的单行