Python Boto3 AWS DynamoDB получить элемент из таблицы без ключа сортировки - PullRequest
0 голосов
/ 08 января 2019

Я пытаюсь обновить элемент из моей таблицы DynamoDb из функции AWS Lambda и получаю следующую ошибку:

"errorMessage": "Произошла ошибка (ValidationException) при вызове операции UpdateItem: предоставленный ключевой элемент не соответствует схеме",

Я не определил ключ сортировки при определении моей таблицы, и мой ключ секции называется pipeId, и я использовал следующий код:

dynamodb = boto3.resource('dynamodb')
table = dynamodb.Table('mytable')

response = table.update_item(
    Key={
        'pipeId': pipe_id
        },
    UpdateExpression="set hookId = :r",
    ExpressionAttributeValues={
            ':r': hook_id
        },
    ReturnValues="UPDATED_NEW"
)

Невозможно получить или обновить элемент без предварительной установки ключа сортировки? или я тут что-то не так делаю?

1 Ответ

0 голосов
/ 09 января 2019

Я нашел решение.

Проблема заключалась в том, что мой первичный ключ определен как число, и я вставлял его как строку, например "3219"; но он не конвертируется автоматически.

...