gpt4 book ai didi

javascript - 如何在发电机数据库中定义 "Map"AttributeType?

转载 作者:行者123 更新时间:2023-11-30 09:27:14 25 4
gpt4 key购买 nike

我是 aws dynamo db 的新手。我 have read我们可以在 dynamo 数据库的模式中设置 M 类型的 attributeValue。

但是当我执行下面的代码时

var params = {
TableName: 'product',
KeySchema: [
{
AttributeName: 'productType',
KeyType: 'HASH'
},
{
AttributeName: 'manufacturer',
KeyType: 'SORT'
}
],
AttributeDefinitions: [
{
AttributeName: 'productType',
AttributeType: 'S'
},
{
AttributeName: 'manufacturer',
AttributeType: 'M'
}
],
ProvisionedThroughput: {
ReadCapacityUnits: 1,
WriteCapacityUnits: 1,
}

};
dynamodb.createTable(params, function(err, data) {
console.log(err, data);

});

它不断抛出错误 {"message":"Member must satisfy enum value set: [B, N, S]","code":"ValidationException","time":"2018-02-07T11 :20:12.930Z","statusCode":400,"retryable":false}

但是上面的链接说有一个Map类型的属性可用。有人能解释一下我怎样才能在 dynamo db 中实现 Map。

最佳答案

当您创建 dynamodb 表或为其添加索引时,您只能定义索引的属性。换句话说,您只能定义用于分区键或排序键的属性。就像你在你的例子中所做的那样。但是唯一对键有效的属性类型是 S(字符串)、N(数字)和 B(二进制)。映射不是分区键或排序键的有效属性类型,因此您不能在定义表或索引时使用它们。

DynamoDB 是无模式的。除了在创建表时用于索引键的属性外,您不定义任何属性。如果您想要在表格中使用 map ,只需在放置或更新项目时插入一张 map 即可。

关于javascript - 如何在发电机数据库中定义 "Map"AttributeType?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48663020/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com