Неправильная ошибка типа операнда при использовании функции list_append внутри UpdateExpression

Я пытаюсь добавить String к существующему StringSet в DynamoDB, используя функцию list_append. Кто-нибудь может увидеть, что не так с этим кодом? Я прочитал и перечитал документы Amazon, но не могу найти проблему.

$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 )'

));

Сгенерированное сообщение об ошибке:

Invalid UpdateExpression: неверный тип операнда для оператора или функции; оператор или функция: list_append, тип операнда: SS

Из того, что я прочитал, я подумал, что оба операнда должны быть StringSets. Напрасно я пытался изменить второй параметр, чтобы он был одной строкой (тип ‘S’), но все еще испытываю такую ​​же ошибку вида:

Invalid UpdateExpression: неверный тип операнда для оператора или функции; оператор или функция: list_append, тип операнда: S

Любая помощь приветствуется!

2

Решение

list_append работает по двум спискам. Чтобы добавить элемент в набор, вы можете использовать ADD оператор вместо вызова SET с результатами list_append,

4

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector