updateItem'Expected'检查字符串集中的一个值

时间:2013-06-20 01:27:21

标签: php amazon-web-services amazon-dynamodb

我正在尝试使用php SDK2进行条件updateItem调用,但无法确定如何检查字符串集中的单个值。

例如:我在dynamoDB中设置了一个字符串:

{ “一”, “B”, “C”}

我想执行updatedItem调用,并删除其中一个值,但如果该值不存在则输出错误。所以,如果我试图从上面的集合中删除“d”,我希望dynamoDB抛出错误,而不是默默地忽略我的字符串集中不存在“d”的事实。

我试过了:

    'Expected' => array(
        myAttribute => array(
            'Exists' => true,
            'Value' => array(Type::STRING_SET => array("d"))
        )
     )

但是,即使该值例如是“a”,也会失败。我认为原因是dynamoDB认为我希望它验证整个集合,而不仅仅是其中的一个值。

有没有办法进行条件放置并验证集合中的单个值?

我可以进行一次getItem调用,将字符串设置为数组并进行自己的检查,但如果可能,我很乐意在一次调用中完成所有操作。

提前致谢

1 个答案:

答案 0 :(得分:1)

查看UpdateItem似乎表明DynamoDB会将值视为一个整体,并且您不能根据集合中的值来设置条件。

如果您想要确认是否可以执行此操作,或者想要为其发出功能请求,我会发布official DynamoDB forum