Amazon dynamodb 如何在dynamoDB上运行DeleteItemRequest?

Amazon dynamodb 如何在dynamoDB上运行DeleteItemRequest?,amazon-dynamodb,delete-row,Amazon Dynamodb,Delete Row,当我在dynamoDB表上运行DeleteItemRequest时,我得到一个异常,它说“提供的键大小与模式的键大小不匹配”。 我所做的就是 DeleteItemRequest deleteRequest=newDeleteItemRequest().withTableName(dynamoDbTableName)。withKey(key) client.deleteItem(deleteRequest) 我需要指定更多的内容吗?我缺少什么吗?这可能意味着传递给方法的键与表中主键的类型不匹配。例

当我在dynamoDB表上运行DeleteItemRequest时,我得到一个异常,它说“提供的键大小与模式的键大小不匹配”。 我所做的就是

DeleteItemRequest deleteRequest=new
DeleteItemRequest().withTableName(dynamoDbTableName)。withKey(key)

client.deleteItem(deleteRequest)


我需要指定更多的内容吗?我缺少什么吗?

这可能意味着传递给方法的键与表中主键的类型不匹配。例如,您传递的是数字键,但表使用的是字符串键。键的类型取决于创建AttributeValue时使用的方法。方法
withN()
创建一个数字键,而方法
.withS()
创建一个字符串键

数字关键示例:

Key key = new Key().withHashKeyElement(new AttributeValue().withN("120"));
Key key = new Key().withHashKeyElement(new AttributeValue().withS("johndoe"));
字符串键示例:

Key key = new Key().withHashKeyElement(new AttributeValue().withN("120"));
Key key = new Key().withHashKeyElement(new AttributeValue().withS("johndoe"));
还有其他类型的方法,比如二进制类型和集合。有关更多详细信息,请参阅