小编Mik*_*ike的帖子

在 UpdateExpression 中使用 list_append 函数时操作数类型错误

我正在尝试使用 list_append 函数将字符串附加到 DynamoDB 中的现有 StringSet。任何人都可以看到这段代码有什么问题吗?我已阅读并重新阅读亚马逊文档,但似乎无法找到问题所在。

$this->objClient->updateItem( array(
        'TableName' => 'mytable',

        'Key' => array(
            'sEmailAddress' => array(
                'S' => 'somebody@email.com'
            )
        ),

        "ExpressionAttributeValues" => array(
            ':vServices' => array( 
                                "SS" => array( 
                                    'value to append'
                                )
                            )
        ),

        "ExpressionAttributeNames" => array(
            "#serv" => "sServices"
        ),

        'UpdateExpression' =>   'set #serv = list_append( #serv, :vServices )'

    ));
Run Code Online (Sandbox Code Playgroud)

生成的错误信息是:

无效的更新表达式:运算符或函数的操作数类型不正确;运算符或函数:list_append,操作数类型:SS

从我读到的内容来看,我认为两个操作数都必须是 StringSet。徒劳地我尝试将第二个参数更改为单个字符串(类型“S”),但仍然遇到相同类型的错误:

无效的更新表达式:运算符或函数的操作数类型不正确;运算符或函数:list_append,操作数类型:S

任何帮助将非常感激!

php amazon-dynamodb

2
推荐指数
1
解决办法
2221
查看次数

标签 统计

amazon-dynamodb ×1

php ×1