首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PartiQL BatchExecuteStatementCommand in DynamoDB SDK v3

PartiQL BatchExecuteStatementCommand in DynamoDB SDK v3
EN

Stack Overflow用户
提问于 2022-06-18 13:14:13
回答 1查看 352关注 0票数 1

我试图在PartiQL AWS v3中发送一批NodeJS语句。该语句对于单个ExecuteStatementCommand运行良好,但批处理命令不工作。

这句话看起来像

代码语言:javascript
复制
const statement = `
SELECT *
FROM "my-table"
WHERE "partitionKey" = '1234'
  AND "filterKey" = '5678'
`

此代码段按预期工作:

代码语言:javascript
复制
const result = await dynamodbClient.send(new ExecuteStatementCommand(
  { Statement: statement}
))

批处理片段没有:

代码语言:javascript
复制
const result = await dynamodbClient.send(new BatchExecuteStatementCommand({
  Statements: [
    {
      Statement: statement
    }
  ]
}))

批处理调用会产生以下错误:

代码语言:javascript
复制
"Code": "ValidationError",
"Message": "Select statements within BatchExecuteStatement must specify the primary key in the where clause."

任何洞察力都会受到极大的赞赏。谢谢你抽出时间阅读我的问题!

EN

回答 1

Stack Overflow用户

发布于 2022-06-18 13:32:17

看来我需要的是一只橡皮鸭。

DynamoDB主键由分区键+排序键组成。我的特定表有一个排序键,这是语句中缺少的。批处理作业不能处理响应的筛选,而且每个语句必须匹配数据库中的单个项。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72669545

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档