Dynamo DB - 是否可以更新/插入嵌套字段

基肖尔

我在发电机数据库中有以下格式的文档。

{ 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] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章