密钥上的条件数是带有节点js的无效dynamo db
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了密钥上的条件数是带有节点js的无效dynamo db相关的知识,希望对你有一定的参考价值。
docClient.update({
TableName: 'patient',
Key: {
"patientId": "TIGERPAT0001"
},
UpdateExpression: "set title = :x, name = :y",
ExpressionAttributeNames: {
"#name": "name"
},
ExpressionAttributeValues: {
":x": 'title value abc',
":y": 'name value xyz'
}
}, function (err, data) {
if (err) {
json.status = '0';
json.result = { 'error': 'Unable to Edit Patient : ' + JSON.stringify(err) };
res.send(json);
} else {
json.status = '1';
json.result = { 'sucess': 'Patient Edited Successfully :' };
res.send(json);
}
});
当使用上面的代码时,我得到了res:
无法编辑患者错误:{"message":"The number of conditions on the keys is invalid","code":"ValidationException","time":"2017-09-13T07:12:56.608Z","requestId":"a01c707c-86b4-41a5-a1c5-92b9ea07c026","statusCode":400,"retryable":false,"retryDelay":6.368631970657979}
我错过了什么/任何错误?
答案
我认为你在创建表时使用了多个键。
如果您在创建表时使用了n
键数,那么您还需要传递n
键数:
例如:
docClient.update({
TableName: 'patient',
Key: {
"patientId": "TIGERPAT0001",
"id1": "id1value",
"id2": "id2value"
},
UpdateExpression: "set title = :x, name = :y",
ExpressionAttributeNames: {
"#name": "name"
},
ExpressionAttributeValues: {
":x": 'title value abc',
":y": 'name value xyz'
}
}, function (err, data) {
if (err) {
json.status = '0';
json.result = { 'error': 'Unable to Edit Patient : ' + JSON.stringify(err) };
res.send(json);
} else {
json.status = '1';
json.result = { 'sucess': 'Patient Edited Successfully :' };
res.send(json);
}
});
请用钥匙替换id1
和id2
以上是关于密钥上的条件数是带有节点js的无效dynamo db的主要内容,如果未能解决你的问题,请参考以下文章
EF dbcontext 在 dynamo 自定义节点中返回一个空的 dbset
Bcrypt:带有 Docker 和 Sails.JS 的无效 ELF 标头
SendGrid API 密钥不起作用。 “提供的授权授权无效、过期或撤销”