我试图使用一些2主键列从dynamo db中获取和删除数据,其中一个是保留关键字 timestamp
.
当我使用其中一个主键获取数据时,它工作正常,但当我尝试使用投影表达式中的两个主键字段删除时,它给出了一个错误,如:
ValidationException:无效的ProjectionExpression:未定义文档路径中使用的表达式属性名称;属性名称:#P
这是我的params对象
{TableName:'Log',ProjectionExpression:'username,#P',ExpressionAttributeNames:{'#P':'timestamp'},ExpressionAttributeValues:null}
username和timestamp是主键列 .
这个东西不仅仅在这个表中工作 . 在其他一些表中我有相同的情况,但它不会给我这个错误 . 只有在这种情况下我才会收到错误 .
1 回答
DeleteItem API不允许您指定ProjectionExpression . 您可以通过选择
ReturnValues = ALL_OLD
来获取项目的整个预删除图像 .