【发布时间】:2020-03-09 17:25:49
【问题描述】:
我在尝试批量放置项目时收到错误消息:“键上的条件数无效”。
模板
{
version: '2018-05-29',
operation: 'BatchPutItem',
tables: {
ItemTable: [
{
accountId: { S: 'f586fb14-6d80-4635-9d2e-d33a1bd49f96' },
itemId: { S: '16e89b71-271c-4ccd-81ad-55f496b15e6f' }
}
]
}
}
表架构
{
"AttributeDefinitions": [
{
"AttributeName": "itemId",
"AttributeType": "S"
},
{
"AttributeName": "accountId",
"AttributeType": "S"
}
],
"TableName": "ItemTable",
"KeySchema": [
{
"AttributeName": "accountId",
"KeyType": "HASH"
},
{
"AttributeName": "itemId",
"KeyType": "RANGE"
}
],
"TableStatus": "ACTIVE"
}
如果我只尝试添加其中一个键,我会收到缺少键的预期错误。如果我将表设置为使用单个分区键,那么它可以工作。我也可以使用代码批量写入,但不能使用 AppSync。
我正在本地测试这个 w serverless appsync/dynamodb local。所有其他单项查询和变异都可以正常工作。我不确定我是否理解它的要求 - 在这种情况下,什么是“条件”?
我在每张桌子上都试过,结果都一样。我在文档中没有看到无法在复合键上完成批处理的迹象,但这似乎就是这样。
【问题讨论】:
标签: amazon-dynamodb serverless-framework aws-appsync