我在发电机数据库中有以下格式的文档。
{ key1: "value1", key2: {sKeya: "A", sKeyB: "B" } }
是否可以(通过 JavaScript)直接更新 dynamo DB 文档中的嵌套字段?BCOZ 我不想再次用所有值更新 key2。
示例:我尝试了以下查询,但没有奏效。而是创建了一个字段 key2.sKeya: "ABC"
UpdateExpression: "set #field = :value", ExpressionAttributeNames: { "#field": "key2.sKeya" }, ExpressionAttributeValues: { ":value": "ABC", }
有没有人遇到过类似的问题?
您需要将对象键定义为单独的属性名称。
所以“key2”的一个别名和“sKeya”的一个别名。
const AWS = require("aws-sdk");
const DOCCLIENT = new AWS.DynamoDB.DocumentClient();
exports.handler = (event, context, callback) => {
let entry = {
TableName: "test",
Key: {
"key1": "value1",
},
UpdateExpression: "set #parent.#child = :value",
ExpressionAttributeNames: {
"#parent": "key2",
"#child": "sKeya"
},
ExpressionAttributeValues: {
":value": "ABC",
},
ReturnValues: "UPDATED_NEW"
};
DOCCLIENT.update(entry, function(err, data) {
callback(null, 'done');
});
};
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句