У меня есть элемент с атрибутом «users» типа stringset, который содержит 2 элемента: «u1», «u2».
я пытаюсь удалить "u1" из "users"
но я получаю следующую ошибку:
com.amazonaws.services.dynamodbv2.model.AmazonDynamoDBException: недопустимое выражение UpdateExpression: синтаксическая ошибка; токен: ": u", рядом: "[: u]" (Сервис: AmazonDynamoDBv2; код состояния: 400; код ошибки: ValidationException;
вот код, который я использую:
UpdateItemSpec updateItemSpec = new UpdateItemSpec()
.withPrimaryKey(hashKeyFieldName, hashKeyValue)
.withUpdateExpression("delete #us[:u]")
.withNameMap(new NameMap()
.with("#us", stringSetFieldName))
.withValueMap(new ValueMap()
.withString(":u", "u1"))
.withReturnValues(ReturnValue.ALL_NEW);
UpdateItemOutcome outcome = table.updateItem(updateItemSpec);