update-item
Описание
Изменяет атрибуты существующего элемента или добавляет новый элемент в таблицу, если его ещё нет. Можно добавлять, удалять или изменять значения атрибутов. Также можно выполнить условное обновление существующего элемента (вставить новую пару имя-значение атрибута, если её нет, или заменить существующую пару имя-значение, если у неё есть определённые ожидаемые значения атрибутов).
Также можно вернуть значения атрибутов элемента в той же операции, используя параметр ReturnValues.
См. также: Документацию AWS API
Синтаксис
update-item
--table-name <value>
--key <value>
[--attribute-updates <value>]
[--expected <value>]
[--conditional-operator <value>]
[--return-values <value>]
[--return-consumed-capacity <value>]
[--return-item-collection-metrics <value>]
[--update-expression <value>]
[--condition-expression <value>]
[--expression-attribute-names <value>]
[--expression-attribute-values <value>]
[--return-values-on-condition-check-failure <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--debug]
[--endpoint-url <value>]
[--no-verify-ssl]
[--no-paginate]
[--output <value>]
[--query <value>]
[--profile <value>]
[--region <value>]
[--version <value>]
[--color <value>]
[--no-sign-request]
[--ca-bundle <value>]
[--cli-read-timeout <value>]
[--cli-connect-timeout <value>]
[--cli-binary-format <value>]
[--no-cli-pager]
[--cli-auto-prompt]
[--no-cli-auto-prompt]
Параметры
--table-name (строка)
--key (словарь)
Первичный ключ элемента, который нужно обновить. Каждый элемент состоит из имени атрибута и значения этого атрибута.
Для первичного ключа необходимо указать все атрибуты. Например, при простом первичном ключе достаточно указать значение для партиционного ключа. При составном первичном ключе необходимо указать значения и для партиционного ключа, и для сортировочного ключа.
key -> (строка)
value -> (структура)
Представляет данные для атрибута.
Каждое значение атрибута описывается как пара имя-значение. Имя — это тип данных, а значение — само значение.
Для получения дополнительной информации см. раздел Типы данных в руководстве разработчика Amazon DynamoDB.
S -> (строка)
Атрибут типа Строка. Например:
"S": "Hello"N -> (строка)
Атрибут типа Число. Например:
"N": "123.45"Числа передаются в DynamoDB как строки для максимальной совместимости между языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
B -> (бинарный массив)
Атрибут типа Двоичные данные. Например:
"B": "dGhpcyB0ZXh0IGlzIGJhc2U2NC1lbmNvZGVk"SS -> (список)
Атрибут типа Множество строк. Например:
"SS": ["Giraffe", "Hippo" ,"Zebra"](строка)
NS -> (список)
Атрибут типа Множество чисел. Например:
"NS": ["42.2", "-19", "7.5", "3.14"]Числа передаются в DynamoDB как строки для максимальной совместимости между языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
(строка)
BS -> (список)
Атрибут типа Множество двоичных данных. Например:
"BS": ["U3Vubnk=", "UmFpbnk=", "U25vd3k="](бинарный массив)
M -> (словарь)
Атрибут типа Словарь. Например:
"M": {"Name": {"S": "Joe"}, "Age": {"N": "35"}}key -> (строка)
value -> (структура)
Представляет данные для атрибута.
Каждое значение атрибута описывается как пара имя-значение. Имя — это тип данных, а значение — само значение.
Для получения дополнительной информации см. раздел Типы данных в руководстве разработчика Amazon DynamoDB.
S -> (строка)
Атрибут типа Строка. Например:
"S": "Hello"N -> (строка)
Атрибут типа Число. Например:
"N": "123.45"Числа передаются в DynamoDB как строки для максимальной совместимости между языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
B -> (бинарный массив)
Атрибут типа Двоичные данные. Например:
"B": "dGhpcyB0ZXh0IGlzIGJhc2U2NC1lbmNvZGVk"SS -> (список)
Атрибут типа Множество строк. Например:
"SS": ["Giraffe", "Hippo" ,"Zebra"](строка)
NS -> (список)
Атрибут типа Множество чисел. Например:
"NS": ["42.2", "-19", "7.5", "3.14"]Числа передаются в DynamoDB как строки для максимальной совместимости между языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
(строка)
BS -> (список)
Атрибут типа Множество двоичных данных. Например:
"BS": ["U3Vubnk=", "UmFpbnk=", "U25vd3k="](бинарный массив)
M -> (словарь)
Атрибут типа Словарь. Например:
"M": {"Name": {"S": "Joe"}, "Age": {"N": "35"}}key -> (строка)
( … рекурсивно … )
L -> (список)
Атрибут типа Список. Например:
"L": [ {"S": "Cookies"} , {"S": "Coffee"}, {"N": "3.14159"}]( … рекурсивно … )
NULL -> (булево)
Атрибут типа NULL. Например:
"NULL": trueBOOL -> (булево)
Атрибут типа Булево. Например:
"BOOL": trueL -> (список)
Атрибут типа Список. Например:
"L": [ {"S": "Cookies"} , {"S": "Coffee"}, {"N": "3.14159"}](структура)
Представляет данные для атрибута.
Каждое значение атрибута описывается как пара имя-значение. Имя — это тип данных, а значение — само значение.
Для получения дополнительной информации см. раздел Типы данных в руководстве разработчика Amazon DynamoDB.
S -> (строка)
Атрибут типа Строка. Например:
"S": "Hello"N -> (строка)
Атрибут типа Число. Например:
"N": "123.45"Числа передаются в DynamoDB как строки для максимальной совместимости между языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
B -> (бинарный массив)
Атрибут типа Двоичные данные. Например:
"B": "dGhpcyB0ZXh0IGlzIGJhc2U2NC1lbmNvZGVk"SS -> (список)
Атрибут типа Множество строк. Например:
"SS": ["Giraffe", "Hippo" ,"Zebra"](строка)
NS -> (список)
Атрибут типа Множество чисел. Например:
"NS": ["42.2", "-19", "7.5", "3.14"]Числа передаются в DynamoDB как строки для максимальной совместимости между языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
(строка)
BS -> (список)
Атрибут типа Множество двоичных данных. Например:
"BS": ["U3Vubnk=", "UmFpbnk=", "U25vd3k="](бинарный массив)
M -> (словарь)
Атрибут типа Словарь. Например:
"M": {"Name": {"S": "Joe"}, "Age": {"N": "35"}}key -> (строка)
( … рекурсивно … )
L -> (список)
Атрибут типа Список. Например:
"L": [ {"S": "Cookies"} , {"S": "Coffee"}, {"N": "3.14159"}]( … рекурсивно … )
NULL -> (булево)
Атрибут типа NULL. Например:
"NULL": trueBOOL -> (булево)
Атрибут типа Булево. Например:
"BOOL": trueNULL -> (булево)
Атрибут типа NULL. Например:
"NULL": trueBOOL -> (булево)
Атрибут типа Булево. Например:
"BOOL": trueJSON Синтаксис:
{"string": {
"S": "string",
"N": "string",
"B": blob,
"SS": ["string", ...],
"NS": ["string", ...],
"BS": [blob, ...],
"M": {"string": {
"S": "string",
"N": "string",
"B": blob,
"SS": ["string", ...],
"NS": ["string", ...],
"BS": [blob, ...],
"M": {"string": { ... recursive ... }
...},
"L": [
{ ... recursive ... }
...
],
"NULL": true|false,
"BOOL": true|false
}
...},
"L": [
{
"S": "string",
"N": "string",
"B": blob,
"SS": ["string", ...],
"NS": ["string", ...],
"BS": [blob, ...],
"M": {"string": { ... recursive ... }
...},
"L": [
{ ... recursive ... }
...
],
"NULL": true|false,
"BOOL": true|false
}
...
],
"NULL": true|false,
"BOOL": true|false
}
...}
--attribute-updates (словарь)
Это устаревшее параметр. Используйте UpdateExpression вместо него. Для получения дополнительной информации см. AttributeUpdates в Руководстве разработчика Amazon DynamoDB.
key -> (строка)
value -> (структура)
Для операции UpdateItem представляет атрибуты, которые нужно изменить, действие, которое нужно выполнить для каждого, и новое значение для каждого.
Примечание
Вы не можете использоватьUpdateItem для обновления атрибутов первичного ключа. Вместо этого вам нужно удалить элемент, а затем использовать PutItem для создания нового элемента с новыми атрибутами.Значения атрибутов не могут быть null; атрибуты типа строка и двоичные атрибуты должны иметь длину больше нуля; атрибуты типа набора не должны быть пустыми. Запросы с пустыми значениями будут отклонены с исключением ValidationException.
Value -> (структура)
Представляет данные для атрибута.
Каждое значение атрибута описывается как пара имя-значение. Имя — это тип данных, а значение — само данные.
Для получения дополнительной информации см. Типы данных в Руководстве разработчика Amazon DynamoDB.
S -> (строка)
Атрибут типа Строка. Например:
"S": "Hello"N -> (строка)
Атрибут типа Число. Например:
"N": "123.45"Числа передаются в DynamoDB по сети в виде строк для максимальной совместимости с различными языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
B -> (бинарный блок)
Атрибут типа Двоичные данные. Например:
"B": "dGhpcyB0ZXh0IGlzIGJhc2U2NC1lbmNvZGVk"SS -> (список)
Атрибут типа Набор строк. Например:
"SS": ["Giraffe", "Hippo" ,"Zebra"](строка)
NS -> (список)
Атрибут типа Набор чисел. Например:
"NS": ["42.2", "-19", "7.5", "3.14"]Числа передаются в DynamoDB по сети в виде строк для максимальной совместимости с различными языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
(строка)
BS -> (список)
Атрибут типа Набор двоичных данных. Например:
"BS": ["U3Vubnk=", "UmFpbnk=", "U25vd3k="](бинарный блок)
M -> (карта)
Атрибут типа Карта. Например:
"M": {"Name": {"S": "Joe"}, "Age": {"N": "35"}}key -> (строка)
value -> (структура)
Представляет данные для атрибута.
Каждое значение атрибута описывается как пара имя-значение. Имя — это тип данных, а значение — само данные.
Для получения дополнительной информации см. Типы данных в Руководстве разработчика Amazon DynamoDB.
S -> (строка)
Атрибут типа Строка. Например:
"S": "Hello"N -> (строка)
Атрибут типа Число. Например:
"N": "123.45"Числа передаются в DynamoDB по сети в виде строк для максимальной совместимости с различными языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
B -> (бинарный блок)
Атрибут типа Двоичные данные. Например:
"B": "dGhpcyB0ZXh0IGlzIGJhc2U2NC1lbmNvZGVk"SS -> (список)
Атрибут типа Набор строк. Например:
"SS": ["Giraffe", "Hippo" ,"Zebra"](строка)
NS -> (список)
Атрибут типа Набор чисел. Например:
"NS": ["42.2", "-19", "7.5", "3.14"]Числа передаются в DynamoDB по сети в виде строк для максимальной совместимости с различными языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
(строка)
BS -> (список)
Атрибут типа Набор двоичных данных. Например:
"BS": ["U3Vubnk=", "UmFpbnk=", "U25vd3k="](бинарный блок)
M -> (карта)
Атрибут типа Карта. Например:
"M": {"Name": {"S": "Joe"}, "Age": {"N": "35"}}key -> (строка)
(… рекурсивно …)
L -> (список)
Атрибут типа Список. Например:
"L": [ {"S": "Cookies"} , {"S": "Coffee"}, {"N": "3.14159"}](… рекурсивно …)
NULL -> (логическое значение)
Атрибут типа Null. Например:
"NULL": trueBOOL -> (логическое значение)
Атрибут типа Булево. Например:
"BOOL": trueL -> (список)
Атрибут типа Список. Например:
"L": [ {"S": "Cookies"} , {"S": "Coffee"}, {"N": "3.14159"}](структура)
Представляет данные для атрибута.
Каждое значение атрибута описывается как пара имя-значение. Имя — это тип данных, а значение — само данные.
Для получения дополнительной информации см. Типы данных в Руководстве разработчика Amazon DynamoDB.
S -> (строка)
Атрибут типа Строка. Например:
"S": "Hello"N -> (строка)
Атрибут типа Число. Например:
"N": "123.45"Числа передаются в DynamoDB по сети в виде строк для максимальной совместимости с различными языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
B -> (бинарный блок)
Атрибут типа Двоичные данные. Например:
"B": "dGhpcyB0ZXh0IGlzIGJhc2U2NC1lbmNvZGVk"SS -> (список)
Атрибут типа Набор строк. Например:
"SS": ["Giraffe", "Hippo" ,"Zebra"](строка)
NS -> (список)
Атрибут типа Набор чисел. Например:
"NS": ["42.2", "-19", "7.5", "3.14"]Числа передаются в DynamoDB по сети в виде строк для максимальной совместимости с различными языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
(строка)
BS -> (список)
Атрибут типа Набор двоичных данных. Например:
"BS": ["U3Vubnk=", "UmFpbnk=", "U25vd3k="](бинарный блок)
M -> (карта)
Атрибут типа Карта. Например:
"M": {"Name": {"S": "Joe"}, "Age": {"N": "35"}}key -> (строка)
(… рекурсивно …)
L -> (список)
Атрибут типа Список. Например:
"L": [ {"S": "Cookies"} , {"S": "Coffee"}, {"N": "3.14159"}](… рекурсивно …)
NULL -> (логическое значение)
Атрибут типа Null. Например:
"NULL": trueBOOL -> (логическое значение)
Атрибут типа Булево. Например:
"BOOL": trueNULL -> (логическое значение)
Атрибут типа Null. Например:
"NULL": trueBOOL -> (логическое значение)
Атрибут типа Булево. Например:
"BOOL": trueAction -> (строка)
Указывает, как выполнить обновление. Допустимые значения — PUT (по умолчанию), DELETE и ADD. Поведение зависит от того, существует ли указанный первичный ключ в таблице.
-
PUT— добавляет указанный атрибут к элементу. Если атрибут уже существует, он заменяется новым значением. -
DELETE— если значение не указано, атрибут и его значение удаляются из элемента. Тип данных указанного значения должен соответствовать типу существующего значения. Если задан набор значений, эти значения вычитаются из исходного набора. Например, если значение атрибута было набором[a,b,c], и действиеDELETEуказало[a,c], то конечное значение атрибута было бы[b]. Задание пустого набора является ошибкой. -
ADD— если атрибут еще не существует, то атрибут и его значения добавляются к элементу. Если атрибут существует, то поведениеADDзависит от типа данных атрибута:- Если существующий атрибут является числом, и если
Valueтакже является числом, тогдаValueматематически добавляется к существующему атрибуту. ЕслиValue— отрицательное число, то оно вычитается из существующего атрибута.
Примечание
Если вы используете
ADDдля увеличения или уменьшения числового значения для элемента, который не существует до обновления, DynamoDB использует 0 в качестве начального значения. Кроме того, если вы используетеADDдля обновления существующего элемента и хотите увеличить или уменьшить значение атрибута, которое еще не существует, DynamoDB использует0в качестве начального значения. Например, предположим, что у элемента, который вы хотите обновить, еще нет атрибута с именем itemcount, но вы решилиADDчисло3к этому атрибуту, даже если он сейчас не существует. DynamoDB создаст атрибут itemcount, установит его начальное значение в0и, наконец, добавит3к нему. Результатом будет новый атрибут itemcount в элементе со значением3.- Если существующий тип данных является набором, и если
Valueтакже является набором, тоValueдобавляется к существующему набору. (Это операция над набором, а не математическое сложение.) Например, если значение атрибута было набором[1,2], а действиеADDуказало[3], то конечное значение атрибута будет[1,2,3]. Возникает ошибка, если для атрибута набора указано действие Add, и указанный тип атрибута не соответствует существующему типу набора. Оба набора должны иметь один и тот же тип данных. Например, если существующий тип данных — набор строк,Valueтакже должен быть набором строк. То же самое относится к наборам чисел и наборам двоичных данных.
- Если существующий атрибут является числом, и если
Это действие допустимо только для существующего атрибута, тип данных которого — число или набор. Не используйте ADD для других типов данных.
PUT— DynamoDB создает новый элемент с указанным первичным ключом и добавляет атрибут.DELETE— ничего не происходит; атрибута для удаления нет.ADD— DynamoDB создает новый элемент с заданным первичным ключом и числовым (или набором) значением для атрибута. Допустимыми типами данных являются число, числовой набор, набор строк или набор двоичных данных.
Синтаксис JSON:
{"string": {
"Value": {
"S": "string",
"N": "string",
"B": blob,
"SS": ["string", ...],
"NS": ["string", ...],
"BS": [blob, ...],
"M": {"string": {
"S": "string",
"N": "string",
"B": blob,
"SS": ["string", ...],
"NS": ["string", ...],
"BS": [blob, ...],
"M": {"string": { ... recursive ... }
...},
"L": [
{ ... recursive ... }
...
],
"NULL": true|false,
"BOOL": true|false
}
...},
"L": [
{
"S": "string",
"N": "string",
"B": blob,
"SS": ["string", ...],
"NS": ["string", ...],
"BS": [blob, ...],
"M": {"string": { ... recursive ... }
...},
"L": [
{ ... recursive ... }
...
],
"NULL": true|false,
"BOOL": true|false
}
...
],
"NULL": true|false,
"BOOL": true|false
},
"Action": "ADD"|"PUT"|"DELETE"
}
...}
--expected (карта)
Это параметр устаревшего формата. Используйте ConditionExpression вместо него. Дополнительную информацию см. в разделе «Ожидается» в Руководстве разработчика Amazon DynamoDB.
key -> (строка)
value -> (структура)
Представляет условие для сравнения со значением атрибута. Это условие может использоваться с операциями DeleteItem, PutItem или UpdateItem; если сравнение истинно, операция выполняется успешно; в противном случае – с ошибкой. Вы можете использовать ExpectedAttributeValue двумя различными способами:
- Используйте
AttributeValueList, чтобы указать одно или несколько значений для сравнения с атрибутом. ИспользуйтеComparisonOperator, чтобы указать, как вы хотите выполнить сравнение. Если сравнение истинно, условный оператор выполняется успешно. - Используйте
Value, чтобы указать значение, которое DynamoDB сравнит с атрибутом. Если значения совпадают, тогдаExpectedAttributeValueистинно и условный оператор выполняется успешно. Необязательно, вы также можете установитьExistsв значение ложь, указывая, что вы не ожидаете найти значение атрибута в таблице. В этом случае условный оператор выполняется успешно только если сравнение ложно.
Value и Exists несовместимы с AttributeValueList и ComparisonOperator. Обратите внимание, что если вы используете оба набора параметров одновременно, DynamoDB вернёт исключение ValidationException.Value -> (структура)
Представляет данные ожидаемого атрибута.
Каждое значение атрибута описывается как пара «имя-значение». Имя — это тип данных, а значение — это само данные.
Дополнительную информацию см. в разделе «Типы данных» в Руководстве разработчика Amazon DynamoDB.
S -> (строка)
Атрибут типа Строка. Например:
"S": "Hello"N -> (строка)
Атрибут типа Число. Например:
"N": "123.45"Числа отправляются в DynamoDB по сети как строки для максимальной совместимости между языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
B -> (бинарный блок данных)
Атрибут типа Бинарный. Например:
"B": "dGhpcyB0ZXh0IGlzIGJhc2U2NC1lbmNvZGVk"SS -> (список)
Атрибут типа Набор строк. Например:
"SS": ["Giraffe", "Hippo" ,"Zebra"](строка)
NS -> (список)
Атрибут типа Набор чисел. Например:
"NS": ["42.2", "-19", "7.5", "3.14"]Числа отправляются в DynamoDB по сети как строки для максимальной совместимости между языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
(строка)
BS -> (список)
Атрибут типа Набор бинарных данных. Например:
"BS": ["U3Vubnk=", "UmFpbnk=", "U25vd3k="](бинарный блок данных)
M -> (карта)
Атрибут типа Карта. Например:
"M": {"Name": {"S": "Joe"}, "Age": {"N": "35"}}key -> (строка)
value -> (структура)
Представляет данные для атрибута.
Каждое значение атрибута описывается как пара «имя-значение». Имя — это тип данных, а значение — это само данные.
Дополнительную информацию см. в разделе «Типы данных» в Руководстве разработчика Amazon DynamoDB.
S -> (строка)
Атрибут типа Строка. Например:
"S": "Hello"N -> (строка)
Атрибут типа Число. Например:
"N": "123.45"Числа отправляются в DynamoDB по сети как строки для максимальной совместимости между языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
B -> (бинарный блок данных)
Атрибут типа Бинарный. Например:
"B": "dGhpcyB0ZXh0IGlzIGJhc2U2NC1lbmNvZGVk"SS -> (список)
Атрибут типа Набор строк. Например:
"SS": ["Giraffe", "Hippo" ,"Zebra"](строка)
NS -> (список)
Атрибут типа Набор чисел. Например:
"NS": ["42.2", "-19", "7.5", "3.14"]Числа отправляются в DynamoDB по сети как строки для максимальной совместимости между языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
(строка)
BS -> (список)
Атрибут типа Набор бинарных данных. Например:
"BS": ["U3Vubnk=", "UmFpbnk=", "U25vd3k="](бинарный блок данных)
M -> (карта)
Атрибут типа Карта. Например:
"M": {"Name": {"S": "Joe"}, "Age": {"N": "35"}}key -> (строка)
(… рекурсивно …)
L -> (список)
Атрибут типа Список. Например:
"L": [ {"S": "Cookies"} , {"S": "Coffee"}, {"N": "3.14159"}](… рекурсивно …)
NULL -> (булево)
Атрибут типа Null. Например:
"NULL": trueBOOL -> (булево)
Атрибут типа Булево. Например:
"BOOL": trueL -> (список)
Атрибут типа Список. Например:
"L": [ {"S": "Cookies"} , {"S": "Coffee"}, {"N": "3.14159"}](структура)
Представляет данные для атрибута.
Каждое значение атрибута описывается как пара «имя-значение». Имя — это тип данных, а значение — это само данные.
Дополнительную информацию см. в разделе «Типы данных» в Руководстве разработчика Amazon DynamoDB.
S -> (строка)
Атрибут типа Строка. Например:
"S": "Hello"N -> (строка)
Атрибут типа Число. Например:
"N": "123.45"Числа отправляются в DynamoDB по сети как строки для максимальной совместимости между языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
B -> (бинарный блок данных)
Атрибут типа Бинарный. Например:
"B": "dGhpcyB0ZXh0IGlzIGJhc2U2NC1lbmNvZGVk"SS -> (список)
Атрибут типа Набор строк. Например:
"SS": ["Giraffe", "Hippo" ,"Zebra"](строка)
NS -> (список)
Атрибут типа Набор чисел. Например:
"NS": ["42.2", "-19", "7.5", "3.14"]Числа отправляются в DynamoDB по сети как строки для максимальной совместимости между языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
(строка)
BS -> (список)
Атрибут типа Набор бинарных данных. Например:
"BS": ["U3Vubnk=", "UmFpbnk=", "U25vd3k="](бинарный блок данных)
M -> (карта)
Атрибут типа Карта. Например:
"M": {"Name": {"S": "Joe"}, "Age": {"N": "35"}}key -> (строка)
(… рекурсивно …)
L -> (список)
Атрибут типа Список. Например:
"L": [ {"S": "Cookies"} , {"S": "Coffee"}, {"N": "3.14159"}](… рекурсивно …)
NULL -> (булево)
Атрибут типа Null. Например:
"NULL": trueBOOL -> (булево)
Атрибут типа Булево. Например:
"BOOL": trueNULL -> (булево)
Атрибут типа Null. Например:
"NULL": trueBOOL -> (булево)
Атрибут типа Булево. Например:
"BOOL": trueExists -> (булево)
Принуждает DynamoDB оценить значение перед выполнением условной операции:
- Если
Existsимеет значениеtrue, DynamoDB проверит, существует ли это значение атрибута в таблице. Если найдено, операция выполняется успешно. Если не найдено, операция завершается ошибкойConditionCheckFailedException. - Если
Existsимеет значениеfalse, DynamoDB предполагает, что значение атрибута не существует в таблице. Если значение действительно отсутствует, предположение верно и операция выполняется успешно. Если значение найдено, несмотря на предположение, что его нет, операция завершается ошибкойConditionCheckFailedException.
Значение по умолчанию для Exists — true. Если вы передаете только Value, DynamoDB предполагает, что атрибут существует: Вам не нужно устанавливать Exists в значение true, так как это подразумевается.
DynamoDB возвращает ошибку ValidationException, если:
-
Existsимеет значениеtrue, но нетValueдля проверки. (Вы ожидаете, что значение существует, но не указываете, какое именно.) -
Existsимеет значениеfalse, но вы также указываетеValue. (Вы не можете ожидать, что атрибут имеет значение и одновременно ожидать, что его нет.)
ComparisonOperator -> (строка)
Сравниватель для оценки атрибутов в AttributeValueList. Например, равно, больше, меньше и т.д.
Доступны следующие операторы сравнения:
EQ | NE | LE | LT | GE | GT | NOT_NULL | NULL | CONTAINS | NOT_CONTAINS | BEGINS_WITH | IN | BETWEENНиже приведены описания каждого оператора сравнения.
-
EQ: Равно.EQподдерживается для всех типов данных, включая списки и карты.AttributeValueListможет содержать только одинAttributeValueэлемент типа String, Number, Binary, String Set, Number Set или Binary Set. Если элемент содержитAttributeValueэлемент другого типа, чем указанный в запросе, значение не соответствует. Например,{"S":"6"}не равно{"N":"6"}. Также,{"N":"6"}не равно{"NS":["6", "2", "1"]}. -
NE: Не равно.NEподдерживается для всех типов данных, включая списки и карты.AttributeValueListможет содержать только одинAttributeValueэлемент типа String, Number, Binary, String Set, Number Set или Binary Set. Если элемент содержитAttributeValueэлемент другого типа, чем указанный в запросе, значение не соответствует. Например,{"S":"6"}не равно{"N":"6"}. Также,{"N":"6"}не равно{"NS":["6", "2", "1"]}. -
LE: Меньше или равно.AttributeValueListможет содержать только одинAttributeValueэлемент типа String, Number или Binary (не типа множества). Если элемент содержитAttributeValueэлемент другого типа, чем указанный в запросе, значение не соответствует. Например,{"S":"6"}не равно{"N":"6"}. Также,{"N":"6"}не сравнивается с{"NS":["6", "2", "1"]}. -
LT: Меньше.AttributeValueListможет содержать только одинAttributeValueэлемент типа String, Number или Binary (не типа множества). Если элемент содержитAttributeValueэлемент другого типа, чем указанный в запросе, значение не соответствует. Например,{"S":"6"}не равно{"N":"6"}. Также,{"N":"6"}не сравнивается с{"NS":["6", "2", "1"]}. -
GE: Больше или равно.AttributeValueListможет содержать только одинAttributeValueэлемент типа String, Number или Binary (не типа множества). Если элемент содержитAttributeValueэлемент другого типа, чем указанный в запросе, значение не соответствует. Например,{"S":"6"}не равно{"N":"6"}. Также,{"N":"6"}не сравнивается с{"NS":["6", "2", "1"]}. -
GT: Больше.AttributeValueListможет содержать только одинAttributeValueэлемент типа String, Number или Binary (не типа множества). Если элемент содержитAttributeValueэлемент другого типа, чем указанный в запросе, значение не соответствует. Например,{"S":"6"}не равно{"N":"6"}. Также,{"N":"6"}не сравнивается с{"NS":["6", "2", "1"]}. -
NOT_NULL: Атрибут существует.NOT_NULLподдерживается для всех типов данных, включая списки и карты.
Примечание
Этот оператор проверяет существование атрибута, а не его тип данных. Если тип данных атрибута “a” равен null, и вы используете NOT_NULL, результат — булево true. Это потому, что атрибут “a” существует; его тип данных не относится к оператору сравнения NOT_NULL.-
NULL: Атрибут не существует.NULLподдерживается для всех типов данных, включая списки и карты.
Примечание
Этот оператор проверяет отсутствие атрибута, а не его тип данных. Если тип данных атрибута “a” равен null, и вы используете NULL, результат — булево false. Это потому, что атрибут “a” существует; его тип данных не относится к оператору сравнения NULL.-
CONTAINS: Проверяет подпоследовательность или значение в наборе.AttributeValueListможет содержать только одинAttributeValueэлемент типа String, Number или Binary (не тип множества). Если целевой атрибут сравнения имеет тип String, оператор проверяет соответствие подстроке. Если целевой атрибут сравнения имеет тип Binary, оператор ищет подпоследовательность в целевом элементе, соответствующую вводу. Если целевой атрибут сравнения является множеством (”SS”, “NS” или “BS”), оператор оценивается как true, если найдено точное соответствие любому члену набора. CONTAINS поддерживается для списков: при оценке “a CONTAINS b”, “a” может быть списком; однако “b” не может быть множеством, картой или списком. -
NOT_CONTAINS: Проверяет отсутствие подпоследовательности или отсутствие значения в наборе.AttributeValueListможет содержать только одинAttributeValueэлемент типа String, Number или Binary (не тип множества). Если целевой атрибут сравнения имеет тип String, оператор проверяет отсутствие соответствия подстроке. Если целевой атрибут сравнения имеет тип Binary, оператор проверяет отсутствие подпоследовательности в целевом элементе, соответствующей вводу. Если целевой атрибут сравнения является множеством (”SS”, “NS” или “BS”), оператор оценивается как true, если не найдено точного соответствия какому-либо члену набора. NOT_CONTAINS поддерживается для списков: при оценке “a NOT CONTAINS b”, “a” может быть списком; однако “b” не может быть множеством, картой или списком. -
BEGINS_WITH: Проверка префикса.AttributeValueListможет содержать только одинAttributeValueтипа String или Binary (не Number или тип множества). Целевой атрибут сравнения должен быть типа String или Binary (не Number или тип множества). -
IN: Проверка соответствия элементов в списке.AttributeValueListможет содержать один или несколькоAttributeValueэлементов типа String, Number или Binary. Эти атрибуты сравниваются с существующим атрибутом элемента. Если какие-либо элементы ввода равны атрибуту элемента, выражение оценивается как true. -
BETWEEN: Больше или равно первому значению и меньше или равно второму значению.AttributeValueListдолжен содержать дваAttributeValueэлемента одного типа, String, Number или Binary (не тип множества). Целевой атрибут соответствует, если целевое значение больше или равно первому элементу и меньше или равно второму элементу. Если элемент содержитAttributeValueэлемент другого типа, чем указанный в запросе, значение не соответствует. Например,{"S":"6"}не сравнивается с{"N":"6"}. Также,{"N":"6"}не сравнивается с{"NS":["6", "2", "1"]}
AttributeValueList -> (список)
Одно или несколько значений для сравнения с заданным атрибутом. Количество значений в списке зависит от используемого ComparisonOperator.
Для типа Число сравнение значений происходит по числовому значению.
Сравнение строковых значений на больше, равно или меньше основано на значениях кодов ASCII. Например, a больше, чем A , а a больше, чем B . Список значений кодов см. на http://en.wikipedia.org/wiki/ASCII#ASCII_printable_characters .
Для типа Двоичный DynamoDB обрабатывает каждый байт двоичных данных как беззнаковый при сравнении двоичных значений.
Дополнительную информацию об указании типов данных в JSON см. в разделе «Формат данных JSON» в руководстве разработчика Amazon DynamoDB.
(структура)
Представляет данные атрибута.
Каждое значение атрибута описывается как пара имя-значение. Имя — тип данных, а значение — сами данные.
Дополнительную информацию см. в разделе «Типы данных» в руководстве разработчика Amazon DynamoDB.
S -> (строка)
Атрибут типа Строка. Например:
"S": "Hello"N -> (строка)
Атрибут типа Число. Например:
"N": "123.45"Числа передаются в DynamoDB по сети в виде строк для максимальной совместимости с различными языками и библиотеками. Однако DynamoDB обрабатывает их как числовые атрибуты для математических операций.
B -> (бинарный блок)
Атрибут типа Двоичный. Например:
"B": "dGhpcyB0ZXh0IGlzIGJhc2U2NC1lbmNvZGVk"SS -> (список)
Атрибут типа Набор строк. Например:
"SS": ["Giraffe", "Hippo" ,"Zebra"](строка)
NS -> (список)
Атрибут типа Набор чисел. Например:
"NS": ["42.2", "-19", "7.5", "3.14"]Числа передаются в DynamoDB по сети в виде строк для максимальной совместимости с различными языками и библиотеками. Однако DynamoDB обрабатывает их как числовые атрибуты для математических операций.
(строка)
BS -> (список)
Атрибут типа Набор двоичных данных. Например:
"BS": ["U3Vubnk=", "UmFpbnk=", "U25vd3k="](бинарный блок)
M -> (словарь)
Атрибут типа Словарь. Например:
"M": {"Name": {"S": "Joe"}, "Age": {"N": "35"}}ключ -> (строка)
значение -> (структура)
Представляет данные атрибута.
Каждое значение атрибута описывается как пара имя-значение. Имя — тип данных, а значение — сами данные.
Дополнительную информацию см. в разделе «Типы данных» в руководстве разработчика Amazon DynamoDB.
S -> (строка)
Атрибут типа Строка. Например:
"S": "Hello"N -> (строка)
Атрибут типа Число. Например:
"N": "123.45"Числа передаются в DynamoDB по сети в виде строк для максимальной совместимости с различными языками и библиотеками. Однако DynamoDB обрабатывает их как числовые атрибуты для математических операций.
B -> (бинарный блок)
Атрибут типа Двоичный. Например:
"B": "dGhpcyB0ZXh0IGlzIGJhc2U2NC1lbmNvZGVk"SS -> (список)
Атрибут типа Набор строк. Например:
"SS": ["Giraffe", "Hippo" ,"Zebra"](строка)
NS -> (список)
Атрибут типа Набор чисел. Например:
"NS": ["42.2", "-19", "7.5", "3.14"]Числа передаются в DynamoDB по сети в виде строк для максимальной совместимости с различными языками и библиотеками. Однако DynamoDB обрабатывает их как числовые атрибуты для математических операций.
(строка)
BS -> (список)
Атрибут типа Набор двоичных данных. Например:
"BS": ["U3Vubnk=", "UmFpbnk=", "U25vd3k="](бинарный блок)
M -> (словарь)
Атрибут типа Словарь. Например:
"M": {"Name": {"S": "Joe"}, "Age": {"N": "35"}}ключ -> (строка)
( … рекурсивно … )
L -> (список)
Атрибут типа Список. Например:
"L": [ {"S": "Cookies"} , {"S": "Coffee"}, {"N": "3.14159"}]( … рекурсивно … )
NULL -> (логическое значение)
Атрибут типа Null. Например:
"NULL": trueBOOL -> (логическое значение)
Атрибут типа Булево. Например:
"BOOL": trueL -> (список)
Атрибут типа Список. Например:
"L": [ {"S": "Cookies"} , {"S": "Coffee"}, {"N": "3.14159"}](структура)
Представляет данные атрибута.
Каждое значение атрибута описывается как пара имя-значение. Имя — тип данных, а значение — сами данные.
Дополнительную информацию см. в разделе «Типы данных» в руководстве разработчика Amazon DynamoDB.
S -> (строка)
Атрибут типа Строка. Например:
"S": "Hello"N -> (строка)
Атрибут типа Число. Например:
"N": "123.45"Числа передаются в DynamoDB по сети в виде строк для максимальной совместимости с различными языками и библиотеками. Однако DynamoDB обрабатывает их как числовые атрибуты для математических операций.
B -> (бинарный блок)
Атрибут типа Двоичный. Например:
"B": "dGhpcyB0ZXh0IGlzIGJhc2U2NC1lbmNvZGVk"SS -> (список)
Атрибут типа Набор строк. Например:
"SS": ["Giraffe", "Hippo" ,"Zebra"](строка)
NS -> (список)
Атрибут типа Набор чисел. Например:
"NS": ["42.2", "-19", "7.5", "3.14"]Числа передаются в DynamoDB по сети в виде строк для максимальной совместимости с различными языками и библиотеками. Однако DynamoDB обрабатывает их как числовые атрибуты для математических операций.
(строка)
BS -> (список)
Атрибут типа Набор двоичных данных. Например:
"BS": ["U3Vubnk=", "UmFpbnk=", "U25vd3k="](бинарный блок)
M -> (словарь)
Атрибут типа Словарь. Например:
"M": {"Name": {"S": "Joe"}, "Age": {"N": "35"}}ключ -> (строка)
( … рекурсивно … )
L -> (список)
Атрибут типа Список. Например:
"L": [ {"S": "Cookies"} , {"S": "Coffee"}, {"N": "3.14159"}]( … рекурсивно … )
NULL -> (логическое значение)
Атрибут типа Null. Например:
"NULL": trueBOOL -> (логическое значение)
Атрибут типа Булево. Например:
"BOOL": trueNULL -> (логическое значение)
Атрибут типа Null. Например:
"NULL": trueBOOL -> (логическое значение)
Атрибут типа Булево. Например:
"BOOL": trueСинтаксис JSON:
{"string": {
"Value": {
"S": "string",
"N": "string",
"B": blob,
"SS": ["string", ...],
"NS": ["string", ...],
"BS": [blob, ...],
"M": {"string": {
"S": "string",
"N": "string",
"B": blob,
"SS": ["string", ...],
"NS": ["string", ...],
"BS": [blob, ...],
"M": {"string": { ... recursive ... }
...},
"L": [
{ ... recursive ... }
...
],
"NULL": true|false,
"BOOL": true|false
}
...},
"L": [
{
"S": "string",
"N": "string",
"B": blob,
"SS": ["string", ...],
"NS": ["string", ...],
"BS": [blob, ...],
"M": {"string": { ... recursive ... }
...},
"L": [
{ ... recursive ... }
...
],
"NULL": true|false,
"BOOL": true|false
}
...
],
"NULL": true|false,
"BOOL": true|false
},
"Exists": true|false,
"ComparisonOperator": "EQ"|"NE"|"IN"|"LE"|"LT"|"GE"|"GT"|"BETWEEN"|"NOT_NULL"|"NULL"|"CONTAINS"|"NOT_CONTAINS"|"BEGINS_WITH",
"AttributeValueList": [
{
"S": "string",
"N": "string",
"B": blob,
"SS": ["string", ...],
"NS": ["string", ...],
"BS": [blob, ...],
"M": {"string": {
"S": "string",
"N": "string",
"B": blob,
"SS": ["string", ...],
"NS": ["string", ...],
"BS": [blob, ...],
"M": {"string": { ... recursive ... }
...},
"L": [
{ ... recursive ... }
...
],
"NULL": true|false,
"BOOL": true|false
}
...},
"L": [
{
"S": "string",
"N": "string",
"B": blob,
"SS": ["string", ...],
"NS": ["string", ...],
"BS": [blob, ...],
"M": {"string": { ... recursive ... }
...},
"L": [
{ ... recursive ... }
...
],
"NULL": true|false,
"BOOL": true|false
}
...
],
"NULL": true|false,
"BOOL": true|false
}
...
]
}
...}
--conditional-operator (строка)
Этот параметр устарел. Используйте ConditionExpression. Дополнительную информацию см. в разделе ConditionalOperator в руководстве разработчика Amazon DynamoDB.
Возможные значения:
ANDOR
--return-values (строка)
Используйте ReturnValues, если вы хотите получить атрибуты элемента в виде, как они отображаются до или после успешного обновления. Для UpdateItem допустимые значения:
-
NONE— ЕслиReturnValuesне указан или имеет значениеNONE, ничего не возвращается. (Это значение по умолчанию дляReturnValues). -
ALL_OLD— Возвращает все атрибуты элемента в виде, как они отображались до операции UpdateItem. -
UPDATED_OLD— Возвращает только обновленные атрибуты в виде, как они отображались до операции UpdateItem. -
ALL_NEW— Возвращает все атрибуты элемента в виде, как они отображаются после операции UpdateItem. -
UPDATED_NEW— Возвращает только обновленные атрибуты в виде, как они отображаются после операции UpdateItem.
Дополнительные затраты на запрос возвращаемого значения отсутствуют, кроме небольшой сетевой и процессорной нагрузки на получение более крупного ответа. Единицы пропускной способности чтения не используются.
Возвращаемые значения — строго согласованные.
Возможные значения:
NONEALL_OLDUPDATED_OLDALL_NEWUPDATED_NEW
--return-consumed-capacity (строка)
Определяет уровень детализации информации о потребленном трафике (пропорциональном или по требованию), который возвращается в ответе:
-
INDEXES— Ответ включает агрегированное значениеConsumedCapacityдля операции, а такжеConsumedCapacityдля каждой таблицы и вторичного индекса, к которым был доступ. Обратите внимание, что некоторые операции, такие какGetItemиBatchGetItem, вообще не обращаются к каким-либо индексам. В этих случаях при использованииINDEXESбудут возвращены только данные о таблице(ах). -
TOTAL— Ответ включает только агрегированное значениеConsumedCapacityдля операции. -
NONE— Подробности оConsumedCapacityв ответе не включены.
Возможные значения:
INDEXESTOTALNONE
--return-item-collection-metrics (строка)
Определяет, возвращаются ли метрики набора элементов. Если установлено значение SIZE, ответ включает статистику наборов элементов, если таковые были изменены во время операции. Если установлено значение NONE (по умолчанию), статистика не возвращается.
Возможные значения:
SIZENONE
--update-expression (строка)
Выражение, которое определяет одно или несколько атрибутов, которые нужно обновить, действие, которое нужно выполнить над ними, и новые значения для них.
Доступны следующие значения действий для UpdateExpression .
-
SET- Добавляет один или несколько атрибутов и значений к элементу. Если какой-либо из этих атрибутов уже существует, они заменяются новыми значениями. Вы также можете использоватьSETдля добавления или вычитания из атрибута, который имеет тип Число. Например:SET myNum = myNum + :valSETподдерживает следующие функции:-
if_not_exists (path, operand)- если элемент не содержит атрибут по указанному пути, тоif_not_existsвычисляет операнд; в противном случае, он вычисляет путь. Вы можете использовать эту функцию, чтобы избежать перезаписи атрибута, который может уже присутствовать в элементе. -
list_append (operand, operand)- вычисляет список с добавленным в него новым элементом. Вы можете добавить новый элемент в начало или конец списка, перевернув порядок операндов.
-
Эти имена функций чувствительны к регистру.
-
REMOVE- Удаляет один или несколько атрибутов из элемента. -
ADD- Добавляет указанное значение к элементу, если атрибут ещё не существует. Если атрибут существует, поведениеADDзависит от типа данных атрибута:- Если существующий атрибут является числом, и если
Valueтакже является числом, тогдаValueматематически добавляется к существующему атрибуту. ЕслиValueявляется отрицательным числом, то оно вычитается из существующего атрибута.
Примечание
Если вы используете
ADDдля инкремента или декремента числового значения для элемента, который не существует до обновления, DynamoDB использует0в качестве начального значения. Аналогично, если вы используетеADDдля существующего элемента, чтобы инкрементировать или декрементировать значение атрибута, которое не существует до обновления, DynamoDB использует0в качестве начального значения. Например, предположим, что у элемента, который вы хотите обновить, нет атрибута с именемitemcount, но вы решилиADDчисло3к этому атрибуту. DynamoDB создаст атрибутitemcount, установит его начальное значение в0и, наконец, добавит3к нему. Результатом будет новый атрибутitemcountв элементе со значением3.- Если существующий тип данных является множеством, и если
Valueтакже является множеством, тоValueдобавляется к существующему множеству. Например, если значение атрибута является множеством[1,2], а действиеADDзадало[3], то конечное значение атрибута равно[1,2,3]. Возникает ошибка, если для атрибута множества указано действиеADDи указанный тип атрибута не соответствует существующему типу множества. Оба множества должны иметь одинаковый примитивный тип данных. Например, если существующий тип данных — множество строк,Valueтакже должно быть множеством строк.
- Если существующий атрибут является числом, и если
Предупреждение
ДействиеADD поддерживает только типы данных Число и множество. Кроме того, ADD может использоваться только для атрибутов верхнего уровня, а не для вложенных атрибутов.-
DELETE- Удаляет элемент из множества. Если указано множество значений, эти значения вычитаются из старого множества. Например, если значение атрибута было множеством[a,b,c], и действиеDELETEуказывает[a,c], то конечное значение атрибута равно[b]. Указание пустого множества является ошибкой.
Предупреждение
ДействиеDELETE поддерживает только типы данных множества. Кроме того, DELETE может использоваться только для атрибутов верхнего уровня, а не для вложенных атрибутов.Вы можете использовать несколько действий в одном выражении, например: SET a=:value1, b=:value2 DELETE :value3, :value4, :value5
Дополнительную информацию об выражениях обновления см. в разделе Изменение элементов и атрибутов в руководстве разработчика Amazon DynamoDB.
--condition-expression (строка)
Условие, которое должно быть выполнено для успешного выполнения условного обновления.
Выражение может содержать следующие элементы:
- Функции:
attribute_exists | attribute_not_exists | attribute_type | contains | begins_with | sizeЭти имена функций чувствительны к регистру. - Операторы сравнения:
= | <> | < | > | <= | >= | BETWEEN | IN - Логические операторы:
AND | OR | NOT
Дополнительную информацию об выражениях условий см. в разделе Указание условий в руководстве разработчика Amazon DynamoDB.
--expression-attribute-names (массив)
Один или несколько маркеров подстановки для имён атрибутов в выражении. Вот некоторые примеры использования ExpressionAttributeNames :
- Для доступа к атрибуту, имя которого конфликтует с зарезервированным словом DynamoDB.
- Для создания места удержания для повторяющихся вхождений имени атрибута в выражении.
- Для предотвращения неправильной интерпретации специальных символов в имени атрибута в выражении.
Используйте символ # в выражении для ссылки на имя атрибута. Например, рассмотрите следующее имя атрибута:
Percentile
Имя этого атрибута конфликтует с зарезервированным словом, поэтому его нельзя использовать напрямую в выражении. (Полный список зарезервированных слов см. в разделе Зарезервированные слова в руководстве разработчика Amazon DynamoDB.) Чтобы обойти эту проблему, вы можете указать следующее для ExpressionAttributeNames :
{"#P":"Percentile"}
Затем вы можете использовать эту подстановку в выражении, как в этом примере:
#P = :val
Примечание
Маркеры, начинающиеся с символа :, являются значениями атрибутов выражения , которые являются заглушками для фактического значения во время выполнения.Дополнительную информацию об именах атрибутов выражения см. в разделе Указание атрибутов элементов в руководстве разработчика Amazon DynamoDB.
key -> (строка)
value -> (строка)
Краткая синтаксическая запись:
KeyName1=string,KeyName2=string
Синтаксис JSON:
{"string": "string"
...}
--expression-attribute-values (массив)
Одно или несколько значений, которые могут быть заменены в выражении.
Используйте символ : (двоеточие) в выражении для получения значения атрибута. Например, предположим, что вы хотите проверить, является ли значение атрибута ProductStatus одним из следующих:
Available | Backordered | DiscontinuedСначала вам нужно указать ExpressionAttributeValues следующим образом:
{ ":avail":{"S":"Available"}, ":back":{"S":"Backordered"}, ":disc":{"S":"Discontinued"} }Затем вы можете использовать эти значения в выражении, например:
ProductStatus IN (:avail, :back, :disc)Для получения дополнительной информации о значениях атрибутов выражения см. раздел Выражения условий в руководстве разработчика Amazon DynamoDB.
key -> (строка)
value -> (структура)
Представляет данные атрибута.
Каждое значение атрибута описывается как пара имя-значение. Имя — это тип данных, а значение — сами данные.
Дополнительную информацию см. в разделе Типы данных в руководстве разработчика Amazon DynamoDB.
S -> (строка)
Атрибут типа Строка. Например:
"S": "Hello"N -> (строка)
Атрибут типа Число. Например:
"N": "123.45"Числа отправляются в DynamoDB по сети в виде строк для максимальной совместимости между языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
B -> (байтовый массив)
Атрибут типа Двоичный. Например:
"B": "dGhpcyB0ZXh0IGlzIGJhc2U2NC1lbmNvZGVk"SS -> (список)
Атрибут типа Множество строк. Например:
"SS": ["Giraffe", "Hippo" ,"Zebra"](строка)
NS -> (список)
Атрибут типа Множество чисел. Например:
"NS": ["42.2", "-19", "7.5", "3.14"]Числа отправляются в DynamoDB по сети в виде строк для максимальной совместимости между языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
(строка)
BS -> (список)
Атрибут типа Множество двоичных данных. Например:
"BS": ["U3Vubnk=", "UmFpbnk=", "U25vd3k="](байтовый массив)
M -> (словарь)
Атрибут типа Словарь. Например:
"M": {"Name": {"S": "Joe"}, "Age": {"N": "35"}}key -> (строка)
value -> (структура)
Представляет данные атрибута.
Каждое значение атрибута описывается как пара имя-значение. Имя — это тип данных, а значение — сами данные.
Дополнительную информацию см. в разделе Типы данных в руководстве разработчика Amazon DynamoDB.
S -> (строка)
Атрибут типа Строка. Например:
"S": "Hello"N -> (строка)
Атрибут типа Число. Например:
"N": "123.45"Числа отправляются в DynamoDB по сети в виде строк для максимальной совместимости между языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
B -> (байтовый массив)
Атрибут типа Двоичный. Например:
"B": "dGhpcyB0ZXh0IGlzIGJhc2U2NC1lbmNvZGVk"SS -> (список)
Атрибут типа Множество строк. Например:
"SS": ["Giraffe", "Hippo" ,"Zebra"](строка)
NS -> (список)
Атрибут типа Множество чисел. Например:
"NS": ["42.2", "-19", "7.5", "3.14"]Числа отправляются в DynamoDB по сети в виде строк для максимальной совместимости между языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
(строка)
BS -> (список)
Атрибут типа Множество двоичных данных. Например:
"BS": ["U3Vubnk=", "UmFpbnk=", "U25vd3k="](байтовый массив)
M -> (словарь)
Атрибут типа Словарь. Например:
"M": {"Name": {"S": "Joe"}, "Age": {"N": "35"}}key -> (строка)
(… рекурсивно …)
L -> (список)
Атрибут типа Список. Например:
"L": [ {"S": "Cookies"} , {"S": "Coffee"}, {"N": "3.14159"}](… рекурсивно …)
NULL -> (булево)
Атрибут типа Null. Например:
"NULL": trueBOOL -> (булево)
Атрибут типа Булево. Например:
"BOOL": trueL -> (список)
Атрибут типа Список. Например:
"L": [ {"S": "Cookies"} , {"S": "Coffee"}, {"N": "3.14159"}](структура)
Представляет данные атрибута.
Каждое значение атрибута описывается как пара имя-значение. Имя — это тип данных, а значение — сами данные.
Дополнительную информацию см. в разделе Типы данных в руководстве разработчика Amazon DynamoDB.
S -> (строка)
Атрибут типа Строка. Например:
"S": "Hello"N -> (строка)
Атрибут типа Число. Например:
"N": "123.45"Числа отправляются в DynamoDB по сети в виде строк для максимальной совместимости между языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
B -> (байтовый массив)
Атрибут типа Двоичный. Например:
"B": "dGhpcyB0ZXh0IGlzIGJhc2U2NC1lbmNvZGVk"SS -> (список)
Атрибут типа Множество строк. Например:
"SS": ["Giraffe", "Hippo" ,"Zebra"](строка)
NS -> (список)
Атрибут типа Множество чисел. Например:
"NS": ["42.2", "-19", "7.5", "3.14"]Числа отправляются в DynamoDB по сети в виде строк для максимальной совместимости между языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
(строка)
BS -> (список)
Атрибут типа Множество двоичных данных. Например:
"BS": ["U3Vubnk=", "UmFpbnk=", "U25vd3k="](байтовый массив)
M -> (словарь)
Атрибут типа Словарь. Например:
"M": {"Name": {"S": "Joe"}, "Age": {"N": "35"}}key -> (строка)
(… рекурсивно …)
L -> (список)
Атрибут типа Список. Например:
"L": [ {"S": "Cookies"} , {"S": "Coffee"}, {"N": "3.14159"}](… рекурсивно …)
NULL -> (булево)
Атрибут типа Null. Например:
"NULL": trueBOOL -> (булево)
Атрибут типа Булево. Например:
"BOOL": trueNULL -> (булево)
Атрибут типа Null. Например:
"NULL": trueBOOL -> (булево)
Атрибут типа Булево. Например:
"BOOL": trueJSON синтаксис:
{"string": {
"S": "string",
"N": "string",
"B": blob,
"SS": ["string", ...],
"NS": ["string", ...],
"BS": [blob, ...],
"M": {"string": {
"S": "string",
"N": "string",
"B": blob,
"SS": ["string", ...],
"NS": ["string", ...],
"BS": [blob, ...],
"M": {"string": { ... recursive ... }
...},
"L": [
{ ... recursive ... }
...
],
"NULL": true|false,
"BOOL": true|false
}
...},
"L": [
{
"S": "string",
"N": "string",
"B": blob,
"SS": ["string", ...],
"NS": ["string", ...],
"BS": [blob, ...],
"M": {"string": { ... recursive ... }
...},
"L": [
{ ... recursive ... }
...
],
"NULL": true|false,
"BOOL": true|false
}
...
],
"NULL": true|false,
"BOOL": true|false
}
...}
--return-values-on-condition-check-failure (строка)
Необязательный параметр, возвращающий атрибуты элемента для операции UpdateItem, которая не прошла проверку условия.
Запрос значения помимо небольшой сетевой и процессорной нагрузки на получение более крупного ответа не влечет дополнительных расходов. Единицы пропускной способности чтения не используются.
Возможные значения:
ALL_OLDNONE
--cli-input-json | --cli-input-yaml (строка) Считывает аргументы из предоставленной JSON-строки. JSON-строка следует формату, заданному --generate-cli-skeleton. Если на командной строке указаны другие аргументы, эти значения переопределят значения, предоставленные JSON. Невозможно передавать произвольные двоичные значения с помощью JSON-значения, так как строка будет взята буквально. Это не может быть указано вместе с --cli-input-yaml.
--generate-cli-skeleton (строка) Выводит JSON-скелет в стандартный вывод без отправки запроса API. Если указано без значения или значение input, выводит JSON-пример входных данных, который можно использовать в качестве аргумента для --cli-input-json. Аналогично, если указано yaml-input, он выведет пример входных данных YAML, который можно использовать с --cli-input-yaml. Если указано значение output, он проверит входные данные команды и вернет JSON-пример выходных данных для этой команды. Сгенерированный JSON-скелет не стабилен между версиями AWS CLI, и нет гарантий обратной совместимости в сгенерированном JSON-скелете.
Общие параметры
--debug (булево)
Включить отладку.
--endpoint-url (строка)
Переопределить URL по умолчанию команды указанным URL.
--no-verify-ssl (булево)
По умолчанию AWS CLI использует SSL при взаимодействии с AWS-сервисами. Для каждого подключения SSL AWS CLI проверяет сертификаты SSL. Этот параметр переопределяет поведение проверки сертификатов SSL по умолчанию.
--no-paginate (булево)
Отключить автоматическую постраничную навигацию. Если автоматическая постраничная навигация отключена, AWS CLI выполнит только один вызов для первой страницы результатов.
--output (строка)
Стиль форматирования выходных данных команды.
- json
- текст
- таблица
- yaml
- yaml-поток
--query (строка)
Запрос JMESPath для фильтрации данных ответа.
--profile (строка)
Использовать определенный профиль из файла учетных данных.
--region (строка)
Регион для использования. Переопределяет настройки конфигурации/среды.
--version (строка)
Отобразить версию этого инструмента.
--color (строка)
Включить/выключить цветной вывод.
- вкл
- выкл
- авто
--no-sign-request (булево)
Не подписывать запросы. Учетные данные не будут загружены, если указан этот аргумент.
--ca-bundle (строка)
Файл сертификатов CA для проверки сертификатов SSL. Переопределяет настройки конфигурации/среды.
--cli-read-timeout (целое число)
Максимальное время чтения сокета в секундах. Если значение установлено в 0, чтение сокета будет блокирующим и не будет иметь таймаута. Значение по умолчанию — 60 секунд.
--cli-connect-timeout (целое число)
Максимальное время подключения сокета в секундах. Если значение установлено в 0, подключение сокета будет блокирующим и не будет иметь таймаута. Значение по умолчанию — 60 секунд.
--cli-binary-format (строка)
Стиль форматирования для двоичных блоков. Формат по умолчанию — base64. Формат base64 ожидает, что двоичные блоки будут предоставлены в виде закодированной в base64 строки. Формат raw-in-base64-out сохраняет совместимость с поведением AWS CLI V1, а двоичные значения должны быть переданы буквально. При предоставлении содержимого из файла, отображаемого в двоичном блоке, fileb:// всегда будет обрабатываться как двоичный и будет использовать содержимое файла напрямую независимо от параметра cli-binary-format. При использовании file:// содержимое файла должно быть должным образом отформатировано для заданного cli-binary-format.
- base64
- raw-in-base64-out
--no-cli-pager (булево)
Отключить диспетчер вывода CLI.
--cli-auto-prompt (булево)
Автоматически запросить параметры ввода CLI.
--no-cli-auto-prompt (булево)
Отключить автоматический запрос параметров ввода CLI.
Примеры
Примечание
Для использования следующих примеров необходимо установить и настроить AWS CLI. Дополнительную информацию см. в руководстве по началу работы в Руководстве пользователя AWS CLI.
Если не указано иное, все примеры используют правила цитирования, характерные для Unix-подобных систем. Эти примеры необходимо адаптировать к правилам цитирования вашей оболочки. См. раздел "Использование кавычек со строками" в Руководстве пользователя AWS CLI.
Пример 1: Обновление элемента в таблице
Следующий update-item пример обновляет элемент в таблице MusicCollection. Он добавляет новый атрибут (Year) и изменяет атрибут AlbumTitle. Все атрибуты элемента, как они отображаются после обновления, возвращаются в ответе.
aws dynamodb update-item \
--table-name MusicCollection \
--key file://key.json \
--update-expression "SET #Y = :y, #AT = :t" \
--expression-attribute-names file://expression-attribute-names.json \
--expression-attribute-values file://expression-attribute-values.json \
--return-values ALL_NEW \
--return-consumed-capacity TOTAL \
--return-item-collection-metrics SIZE
Содержание key.json:
{
"Artist": {"S": "Acme Band"},
"SongTitle": {"S": "Happy Day"}
}
Содержание expression-attribute-names.json:
{
"#Y":"Year", "#AT":"AlbumTitle"
}
Содержание expression-attribute-values.json:
{
":y":{"N": "2015"},
":t":{"S": "Louder Than Ever"}
}
Вывод:
{
"Attributes": {
"AlbumTitle": {
"S": "Louder Than Ever"
},
"Awards": {
"N": "10"
},
"Artist": {
"S": "Acme Band"
},
"Year": {
"N": "2015"
},
"SongTitle": {
"S": "Happy Day"
}
},
"ConsumedCapacity": {
"TableName": "MusicCollection",
"CapacityUnits": 3.0
},
"ItemCollectionMetrics": {
"ItemCollectionKey": {
"Artist": {
"S": "Acme Band"
}
},
"SizeEstimateRangeGB": [
0.0,
1.0
]
}
}
Дополнительную информацию см. в разделе "Запись элемента" в Руководстве разработчика Amazon DynamoDB.
Пример 2: Условное обновление элемента
Следующий пример обновляет элемент в таблице MusicCollection, но только в том случае, если существующий элемент еще не содержит атрибут Year.
aws dynamodb update-item \
--table-name MusicCollection \
--key file://key.json \
--update-expression "SET #Y = :y, #AT = :t" \
--expression-attribute-names file://expression-attribute-names.json \
--expression-attribute-values file://expression-attribute-values.json \
--condition-expression "attribute_not_exists(#Y)"
Содержание key.json:
{
"Artist": {"S": "Acme Band"},
"SongTitle": {"S": "Happy Day"}
}
Содержание expression-attribute-names.json:
{
"#Y":"Year",
"#AT":"AlbumTitle"
}
Содержание expression-attribute-values.json:
{
":y":{"N": "2015"},
":t":{"S": "Louder Than Ever"}
}
Если элемент уже содержит атрибут Year, DynamoDB возвращает следующий вывод.
An error occurred (ConditionalCheckFailedException) when calling the UpdateItem operation: The conditional request failed
Дополнительную информацию см. в разделе "Запись элемента" в Руководстве разработчика Amazon DynamoDB.
Вывод
Атрибуты -> (карта)
Карта значений атрибутов, как они появляются до или после операции UpdateItem, как определено параметром ReturnValues.
Карта Attributes присутствует только в случае успешного обновления и если параметр ReturnValues был указан не как NONE в запросе. Каждый элемент представляет один атрибут.
ключ -> (строка)
значение -> (структура)
Представляет данные для атрибута.
Каждое значение атрибута описывается как пара «имя-значение». Имя — это тип данных, а значение — само данные.
Дополнительную информацию см. в разделе «Типы данных» в Руководстве разработчика Amazon DynamoDB.
S -> (строка)
Атрибут типа Строка. Например:
"S": "Hello"N -> (строка)
Атрибут типа Число. Например:
"N": "123.45"Числа передаются в DynamoDB по сети в виде строк для максимальной совместимости между языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
B -> (двоичные данные)
Атрибут типа Двоичные данные. Например:
"B": "dGhpcyB0ZXh0IGlzIGJhc2U2NC1lbmNvZGVk"SS -> (список)
Атрибут типа Множество строк. Например:
"SS": ["Giraffe", "Hippo" ,"Zebra"](строка)
NS -> (список)
Атрибут типа Множество чисел. Например:
"NS": ["42.2", "-19", "7.5", "3.14"]Числа передаются в DynamoDB по сети в виде строк для максимальной совместимости между языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
(строка)
BS -> (список)
Атрибут типа Множество двоичных данных. Например:
"BS": ["U3Vubnk=", "UmFpbnk=", "U25vd3k="](двоичные данные)
M -> (карта)
Атрибут типа Карта. Например:
"M": {"Name": {"S": "Joe"}, "Age": {"N": "35"}}ключ -> (строка)
значение -> (структура)
Представляет данные для атрибута.
Каждое значение атрибута описывается как пара «имя-значение». Имя — это тип данных, а значение — само данные.
Дополнительную информацию см. в разделе «Типы данных» в Руководстве разработчика Amazon DynamoDB.
S -> (строка)
Атрибут типа Строка. Например:
"S": "Hello"N -> (строка)
Атрибут типа Число. Например:
"N": "123.45"Числа передаются в DynamoDB по сети в виде строк для максимальной совместимости между языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
B -> (двоичные данные)
Атрибут типа Двоичные данные. Например:
"B": "dGhpcyB0ZXh0IGlzIGJhc2U2NC1lbmNvZGVk"SS -> (список)
Атрибут типа Множество строк. Например:
"SS": ["Giraffe", "Hippo" ,"Zebra"](строка)
NS -> (список)
Атрибут типа Множество чисел. Например:
"NS": ["42.2", "-19", "7.5", "3.14"]Числа передаются в DynamoDB по сети в виде строк для максимальной совместимости между языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
(строка)
BS -> (список)
Атрибут типа Множество двоичных данных. Например:
"BS": ["U3Vubnk=", "UmFpbnk=", "U25vd3k="](двоичные данные)
M -> (карта)
Атрибут типа Карта. Например:
"M": {"Name": {"S": "Joe"}, "Age": {"N": "35"}}ключ -> (строка)
(… рекурсивно …)
L -> (список)
Атрибут типа Список. Например:
"L": [ {"S": "Cookies"} , {"S": "Coffee"}, {"N": "3.14159"}](… рекурсивно …)
NULL -> (булево)
Атрибут типа NULL. Например:
"NULL": trueBOOL -> (булево)
Атрибут типа Булево. Например:
"BOOL": trueL -> (список)
Атрибут типа Список. Например:
"L": [ {"S": "Cookies"} , {"S": "Coffee"}, {"N": "3.14159"}](структура)
Представляет данные для атрибута.
Каждое значение атрибута описывается как пара «имя-значение». Имя — это тип данных, а значение — само данные.
Дополнительную информацию см. в разделе «Типы данных» в Руководстве разработчика Amazon DynamoDB.
S -> (строка)
Атрибут типа Строка. Например:
"S": "Hello"N -> (строка)
Атрибут типа Число. Например:
"N": "123.45"Числа передаются в DynamoDB по сети в виде строк для максимальной совместимости между языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
B -> (двоичные данные)
Атрибут типа Двоичные данные. Например:
"B": "dGhpcyB0ZXh0IGlzIGJhc2U2NC1lbmNvZGVk"SS -> (список)
Атрибут типа Множество строк. Например:
"SS": ["Giraffe", "Hippo" ,"Zebra"](строка)
NS -> (список)
Атрибут типа Множество чисел. Например:
"NS": ["42.2", "-19", "7.5", "3.14"]Числа передаются в DynamoDB по сети в виде строк для максимальной совместимости между языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
(строка)
BS -> (список)
Атрибут типа Множество двоичных данных. Например:
"BS": ["U3Vubnk=", "UmFpbnk=", "U25vd3k="](двоичные данные)
M -> (карта)
Атрибут типа Карта. Например:
"M": {"Name": {"S": "Joe"}, "Age": {"N": "35"}}ключ -> (строка)
(… рекурсивно …)
L -> (список)
Атрибут типа Список. Например:
"L": [ {"S": "Cookies"} , {"S": "Coffee"}, {"N": "3.14159"}](… рекурсивно …)
NULL -> (булево)
Атрибут типа NULL. Например:
"NULL": trueBOOL -> (булево)
Атрибут типа Булево. Например:
"BOOL": trueNULL -> (булево)
Атрибут типа NULL. Например:
"NULL": trueBOOL -> (булево)
Атрибут типа Булево. Например:
"BOOL": trueConsumedCapacity -> (структура)
Единицы емкости, потребленные операцией UpdateItem. Возвращаемые данные включают общее потребление предоставленной пропускной способности, а также статистику для таблицы и всех индексов, участвующих в операции. ConsumedCapacity возвращается только в том случае, если был указан параметр ReturnConsumedCapacity. Дополнительную информацию см. в разделе «Потребление единиц емкости для операций записи» в Руководстве разработчика Amazon DynamoDB.
TableName -> (строка)
CapacityUnits -> (вещественное число)
ReadCapacityUnits -> (вещественное число)
WriteCapacityUnits -> (вещественное число)
Table -> (структура)
Количество пропускной способности, потребленное в таблице, затронутой операцией.
ReadCapacityUnits -> (вещественное число)
WriteCapacityUnits -> (вещественное число)
CapacityUnits -> (вещественное число)
LocalSecondaryIndexes -> (карта)
Количество пропускной способности, потребленное в каждом локальном индексе, затронутом операцией.
ключ -> (строка)
значение -> (структура)
Представляет количество потребленной пропускной способности в таблице или индексе.
ReadCapacityUnits -> (вещественное число)
WriteCapacityUnits -> (вещественное число)
CapacityUnits -> (вещественное число)
GlobalSecondaryIndexes -> (карта)
Количество пропускной способности, потребленное в каждом глобальном индексе, затронутом операцией.
ключ -> (строка)
значение -> (структура)
Представляет количество потребленной пропускной способности в таблице или индексе.
ReadCapacityUnits -> (вещественное число)
WriteCapacityUnits -> (вещественное число)
CapacityUnits -> (вещественное число)
ItemCollectionMetrics -> (структура)
Информация о коллекциях элементов, если таковые имеются, которые были затронуты операцией UpdateItem. ItemCollectionMetrics возвращается только в том случае, если был указан параметр ReturnItemCollectionMetrics. Если у таблицы нет локальных вторичных индексов, эта информация не возвращается в ответе.
Каждый элемент ItemCollectionMetrics состоит из:
-
ItemCollectionKey- Значение ключа раздела для коллекции элементов. Оно совпадает со значением ключа раздела самого элемента. -
SizeEstimateRangeGB- Оценка размера коллекции элементов в гигабайтах. Это значение представляет собой массив из двух элементов, содержащий нижнюю и верхнюю границы оценки. Оценка включает размер всех элементов в таблице, а также размер всех атрибутов, спроецированных во все локальные вторичные индексы в этой таблице. Используйте эту оценку для измерения того, приближается ли локальный вторичный индекс к своему размерному пределу. Оценка может меняться со временем, поэтому не полагайтесь на точность и достоверность оценки.
ItemCollectionKey -> (map)
Значение ключа раздела для коллекции элементов. Это значение совпадает со значением ключа раздела элемента.
key -> (string)
value -> (structure)
Представляет данные для атрибута.
Каждое значение атрибута описывается как пара имя-значение. Имя — это тип данных, а значение — это само данные.
Для получения дополнительной информации см. раздел Типы данных в руководстве разработчика Amazon DynamoDB.
S -> (string)
Атрибут типа Строка. Например:
"S": "Hello"N -> (string)
Атрибут типа Число. Например:
"N": "123.45"Числа передаются в DynamoDB по сети в виде строк для максимальной совместимости с различными языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
B -> (blob)
Атрибут типа Двоичные данные. Например:
"B": "dGhpcyB0ZXh0IGlzIGJhc2U2NC1lbmNvZGVk"SS -> (list)
Атрибут типа Набор строк. Например:
"SS": ["Giraffe", "Hippo" ,"Zebra"](string)
NS -> (list)
Атрибут типа Набор чисел. Например:
"NS": ["42.2", "-19", "7.5", "3.14"]Числа передаются в DynamoDB по сети в виде строк для максимальной совместимости с различными языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
(string)
BS -> (list)
Атрибут типа Набор двоичных данных. Например:
"BS": ["U3Vubnk=", "UmFpbnk=", "U25vd3k="](blob)
M -> (map)
Атрибут типа Map. Например:
"M": {"Name": {"S": "Joe"}, "Age": {"N": "35"}}key -> (string)
value -> (structure)
Представляет данные для атрибута.
Каждое значение атрибута описывается как пара имя-значение. Имя — это тип данных, а значение — это само данные.
Для получения дополнительной информации см. раздел Типы данных в руководстве разработчика Amazon DynamoDB.
S -> (string)
Атрибут типа Строка. Например:
"S": "Hello"N -> (string)
Атрибут типа Число. Например:
"N": "123.45"Числа передаются в DynamoDB по сети в виде строк для максимальной совместимости с различными языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
B -> (blob)
Атрибут типа Двоичные данные. Например:
"B": "dGhpcyB0ZXh0IGlzIGJhc2U2NC1lbmNvZGVk"SS -> (list)
Атрибут типа Набор строк. Например:
"SS": ["Giraffe", "Hippo" ,"Zebra"](string)
NS -> (list)
Атрибут типа Набор чисел. Например:
"NS": ["42.2", "-19", "7.5", "3.14"]Числа передаются в DynamoDB по сети в виде строк для максимальной совместимости с различными языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
(string)
BS -> (list)
Атрибут типа Набор двоичных данных. Например:
"BS": ["U3Vubnk=", "UmFpbnk=", "U25vd3k="](blob)
M -> (map)
Атрибут типа Map. Например:
"M": {"Name": {"S": "Joe"}, "Age": {"N": "35"}}key -> (string)
( … рекурсивно … )
L -> (list)
Атрибут типа Список. Например:
"L": [ {"S": "Cookies"} , {"S": "Coffee"}, {"N": "3.14159"}]( … рекурсивно … )
NULL -> (boolean)
Атрибут типа Null. Например:
"NULL": trueBOOL -> (boolean)
Атрибут типа Boolean. Например:
"BOOL": trueL -> (list)
Атрибут типа Список. Например:
"L": [ {"S": "Cookies"} , {"S": "Coffee"}, {"N": "3.14159"}](structure)
Представляет данные для атрибута.
Каждое значение атрибута описывается как пара имя-значение. Имя — это тип данных, а значение — это само данные.
Для получения дополнительной информации см. раздел Типы данных в руководстве разработчика Amazon DynamoDB.
S -> (string)
Атрибут типа Строка. Например:
"S": "Hello"N -> (string)
Атрибут типа Число. Например:
"N": "123.45"Числа передаются в DynamoDB по сети в виде строк для максимальной совместимости с различными языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
B -> (blob)
Атрибут типа Двоичные данные. Например:
"B": "dGhpcyB0ZXh0IGlzIGJhc2U2NC1lbmNvZGVk"SS -> (list)
Атрибут типа Набор строк. Например:
"SS": ["Giraffe", "Hippo" ,"Zebra"](string)
NS -> (list)
Атрибут типа Набор чисел. Например:
"NS": ["42.2", "-19", "7.5", "3.14"]Числа передаются в DynamoDB по сети в виде строк для максимальной совместимости с различными языками и библиотеками. Однако DynamoDB обрабатывает их как атрибуты числового типа для математических операций.
(string)
BS -> (list)
Атрибут типа Набор двоичных данных. Например:
"BS": ["U3Vubnk=", "UmFpbnk=", "U25vd3k="](blob)
M -> (map)
Атрибут типа Map. Например:
"M": {"Name": {"S": "Joe"}, "Age": {"N": "35"}}key -> (string)
( … рекурсивно … )
L -> (list)
Атрибут типа Список. Например:
"L": [ {"S": "Cookies"} , {"S": "Coffee"}, {"N": "3.14159"}]( … рекурсивно … )
NULL -> (boolean)
Атрибут типа Null. Например:
"NULL": trueBOOL -> (boolean)
Атрибут типа Boolean. Например:
"BOOL": trueNULL -> (boolean)
Атрибут типа Null. Например:
"NULL": trueBOOL -> (boolean)
Атрибут типа Boolean. Например:
"BOOL": trueSizeEstimateRangeGB -> (list)
Оценка размера коллекции элементов в гигабайтах. Это значение представляет собой массив из двух элементов, содержащий нижнюю и верхнюю границы оценки. Оценка включает размер всех элементов в таблице, а также размер всех атрибутов, спроецированных во все локальные вторичные индексы в этой таблице. Используйте эту оценку для измерения того, приближается ли локальный вторичный индекс к своему размерному пределу.
Оценка может меняться со временем, поэтому не полагайтесь на точность и достоверность оценки.
(double)
© Copyright 2025, Amazon Web Services. Created using Sphinx.