Spec-Zone.ru › AWS CLI v2

[ aws . rds-data ]

batch-execute-statement

Описание

Выполняет пакетное SQL-утверждение над массивом данных.

Вы можете запускать массовые операции обновления и вставки для нескольких записей, используя оператор DML с различными наборами параметров. Массовые операции могут значительно улучшить производительность по сравнению с отдельными операциями вставки и обновления.

Примечание

Если вызов не является частью транзакции, потому что он не включает параметр transactionID, изменения, которые происходят в результате вызова, автоматически фиксируются.

Нет фиксированного верхнего предела для количества наборов параметров. Однако максимальный размер HTTP-запроса, отправляемого через API данных, составляет 4 МБ. Если запрос превышает этот предел, API данных возвращает ошибку и не обрабатывает запрос. Этот предел в 4 МБ включает размер HTTP-заголовков и JSON-нотации в запросе. Таким образом, количество наборов параметров, которое вы можете включить, зависит от сочетания факторов, таких как размер SQL-утверждения и размер каждого набора параметров.

Предел размера ответа составляет 1 МБ. Если вызов возвращает более 1 МБ данных ответа, вызов завершается.

См. также: Документацию API AWS

Синтаксис

  batch-execute-statement
--resource-arn <value>
--secret-arn <value>
--sql <value>
[--database <value>]
[--schema <value>]
[--parameter-sets <value>]
[--transaction-id <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]

Параметры

--resource-arn (строка)

Amazon Resource Name (ARN) кластера баз данных Aurora Serverless.

--secret-arn (строка)

ARN секрета, который предоставляет доступ к кластеру баз данных. Введите имя пользователя и пароль базы данных для учетных данных в секрете.

Дополнительную информацию о создании секрета см. в статье Create a database secret .

--sql (строка)

SQL-утверждение для выполнения. Не включайте точку с запятой (;) в конце SQL-утверждения.

--database (строка)

Имя базы данных.

--schema (строка)

Имя схемы базы данных.

Примечание

В настоящее время параметр schema не поддерживается.

--parameter-sets (список)

Набор параметров для пакетной операции.

SQL-утверждение выполняется столько раз, сколько наборов параметров предоставлено. Для выполнения SQL-утверждения без параметров используйте один из следующих вариантов:

  • Укажите один или несколько пустых наборов параметров.
  • Используйте операцию ExecuteStatement вместо операции BatchExecuteStatement.

Примечание

Массивы параметров не поддерживаются.

(список)

(структура)

Параметр, используемый в SQL-утверждении.

name -> (строка)

Имя параметра.

value -> (меченый объединенный структура)

Значение параметра.

Примечание

Это структура с метками. Может быть установлено только одно из следующих верхнеуровневых ключей: isNull, booleanValue, longValue, doubleValue, stringValue, blobValue, arrayValue.

isNull -> (булево)

Значение NULL.

booleanValue -> (булево)

Значение типа данных Boolean.

longValue -> (длинное целое)

Значение типа данных long.

doubleValue -> (двойное)

Значение типа данных double.

stringValue -> (строка)

Значение типа данных string.

blobValue -> (двоичные данные)

Значение типа данных BLOB.

arrayValue -> (меченый объединенный структура)

Массив значений.

Примечание

Это структура с метками. Может быть установлено только одно из следующих верхнеуровневых ключей: booleanValues, longValues, doubleValues, stringValues, arrayValues.

booleanValues -> (список)

Массив значений типа Boolean.

(булево)

longValues -> (список)

Массив целых чисел.

(длинное целое)

doubleValues -> (список)

Массив чисел с плавающей точкой.

(двойное)

stringValues -> (список)

Массив строк.

(строка)

arrayValues -> (список)

Массив массивов.

(меченый объединенный структура)

Содержит массив.

Примечание

Это структура с метками. Может быть установлено только одно из следующих верхнеуровневых ключей: booleanValues, longValues, doubleValues, stringValues, arrayValues.

booleanValues -> (список)

Массив значений типа Boolean.

(булево)

longValues -> (список)

Массив целых чисел.

(длинное целое)

doubleValues -> (список)

Массив чисел с плавающей точкой.

(двойное)

stringValues -> (список)

Массив строк.

(строка)

arrayValues -> (список)

Массив массивов.

(… рекурсивно …)

typeHint -> (строка)

Подсказка, которая указывает правильный тип объекта для сопоставления типов данных. Возможные значения:

  • DATE - Соответствующее значение параметра String отправляется в базу данных как объект типа DATE. Принятый формат - YYYY-MM-DD .
  • DECIMAL - Соответствующее значение параметра String отправляется в базу данных как объект типа DECIMAL.
  • JSON - Соответствующее значение параметра String отправляется в базу данных как объект типа JSON.
  • TIME - Соответствующее значение параметра String отправляется в базу данных как объект типа TIME. Принятый формат - HH:MM:SS[.FFF] .
  • TIMESTAMP - Соответствующее значение параметра String отправляется в базу данных как объект типа TIMESTAMP. Принятый формат - YYYY-MM-DD HH:MM:SS[.FFF] .
  • UUID - Соответствующее значение параметра String отправляется в базу данных как объект типа UUID.

JSON-синтаксис:

[
  [
    {
      "name": "string",
      "value": {
        "isNull": true|false,
        "booleanValue": true|false,
        "longValue": long,
        "doubleValue": double,
        "stringValue": "string",
        "blobValue": blob,
        "arrayValue": {
          "booleanValues": [true|false, ...],
          "longValues": [long, ...],
          "doubleValues": [double, ...],
          "stringValues": ["string", ...],
          "arrayValues": [
            {
              "booleanValues": [true|false, ...],
              "longValues": [long, ...],
              "doubleValues": [double, ...],
              "stringValues": ["string", ...],
              "arrayValues": [
                { ... recursive ... }
                ...
              ]
            }
            ...
          ]
        }
      },
      "typeHint": "JSON"|"UUID"|"TIMESTAMP"|"DATE"|"TIME"|"DECIMAL"
    }
    ...
  ]
  ...
]

--transaction-id (строка)

Идентификатор транзакции, которая была начата с помощью операции BeginTransaction. Укажите идентификатор транзакции, в которую вы хотите включить SQL-утверждение.

Если SQL-утверждение не является частью транзакции, не устанавливайте этот параметр.

--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
  • text
  • table
  • yaml
  • yaml-stream

--query (строка)

Запрос JMESPath для фильтрации данных ответа.

--profile (строка)

Используйте определенный профиль из файла учетных данных.

--region (строка)

Регион для использования. Переопределяет настройки конфигурации/среды.

--version (строка)

Отображает версию этого инструмента.

--color (строка)

Включает/отключает цветной вывод.

  • on
  • off
  • auto

--no-sign-request (булево)

Не подписывать запросы. Учетные данные не будут загружены, если этот аргумент предоставлен.

--ca-bundle (строка)

CA-пакет сертификатов для использования при проверке SSL-сертификатов. Переопределяет настройки конфигурации/среды.

--cli-read-timeout (целое число)

Максимальное время чтения сокета в секундах. Если значение установлено в 0, чтение сокета будет блокирующим и не будет иметь таймаута. Значение по умолчанию - 60 секунд.

--cli-connect-timeout (целое число)

Максимальное время подключения сокета в секундах. Если значение установлено в 0, подключение сокета будет блокирующим и не будет иметь таймаута. Значение по умолчанию - 60 секунд.

--cli-binary-format (строка)

Стиль форматирования для использования с двоичными BLOB-данными. Формат по умолчанию - base64. Формат base64 ожидает, что двоичные BLOB-данные будут предоставлены как строка, закодированная в base64. Формат raw-in-base64-out сохраняет совместимость с поведением AWS CLI V1, и двоичные значения должны быть переданы буквально. При предоставлении содержимого из файла, которое соответствует двоичному BLOB, fileb:// всегда будет обрабатываться как двоичное и использовать содержимое файла напрямую независимо от настройки cli-binary-format. При использовании file:// содержимое файла должно быть правильно отформатировано для настроенного cli-binary-format.

  • base64
  • raw-in-base64-out

--no-cli-pager (булево)

Отключить пагинатор командной строки для вывода.

--cli-auto-prompt (булево)

Автоматически запрашивать параметры ввода CLI.

--no-cli-auto-prompt (булево)

Отключить автоматическую запрос параметров ввода CLI.

Примеры

Примечание

Для использования следующих примеров необходимо установить и настроить AWS CLI. Дополнительную информацию см. в руководстве по началу работы в Руководстве пользователя AWS CLI.

Если не указано иное, во всех примерах используются правила цитирования, аналогичные Unix. Эти примеры необходимо адаптировать к правилам цитирования вашей оболочки. См. раздел Использование кавычек со строками в Руководстве пользователя AWS CLI.

Для выполнения пакетного SQL-запроса

Следующий batch-execute-statement пример выполняет пакетный SQL-запрос над массивом данных с набором параметров.

aws rds-data batch-execute-statement \
    --resource-arn "arn:aws:rds:us-west-2:123456789012:cluster:mydbcluster" \
    --database "mydb" \
    --secret-arn "arn:aws:secretsmanager:us-west-2:123456789012:secret:mysecret" \
    --sql "insert into mytable values (:id, :val)" \
    --parameter-sets "[[{\"name\": \"id\", \"value\": {\"longValue\": 1}},{\"name\": \"val\", \"value\": {\"stringValue\": \"ValueOne\"}}],
        [{\"name\": \"id\", \"value\": {\"longValue\": 2}},{\"name\": \"val\", \"value\": {\"stringValue\": \"ValueTwo\"}}],
        [{\"name\": \"id\", \"value\": {\"longValue\": 3}},{\"name\": \"val\", \"value\": {\"stringValue\": \"ValueThree\"}}]]"

Эта команда не выводит ничего на экран.

Дополнительную информацию см. в разделе Использование API данных для Aurora Serverless в Руководстве пользователя Amazon RDS.

Вывод

updateResults -> (список)

Результаты выполнения каждой записи пакета.

(структура)

Элементы ответа представляют результаты обновления.

generatedFields -> (список)

Значения полей, сгенерированных во время запроса.

(структура помеченного объединения)

Содержит значение.

Примечание

Это структура помеченного объединения. Только один из следующих верхнеуровневых ключей может быть задан: isNull, booleanValue, longValue, doubleValue, stringValue, blobValue, arrayValue.

isNull -> (логическое значение)

Значение NULL.

booleanValue -> (логическое значение)

Значение типа данных Boolean.

longValue -> (длинное целое)

Значение типа данных long.

doubleValue -> (двойное)

Значение типа данных double.

stringValue -> (строка)

Значение типа данных string.

blobValue -> (BLOB)

Значение типа данных BLOB.

arrayValue -> (структура помеченного объединения)

Массив значений.

Примечание

Это структура помеченного объединения. Только один из следующих верхнеуровневых ключей может быть задан: booleanValues, longValues, doubleValues, stringValues, arrayValues.

booleanValues -> (список)

Массив значений Boolean.

(логическое значение)

longValues -> (список)

Массив целых чисел.

(длинное целое)

doubleValues -> (список)

Массив чисел с плавающей точкой.

(двойное)

stringValues -> (список)

Массив строк.

(строка)

arrayValues -> (список)

Массив массивов.

(структура помеченного объединения)

Содержит массив.

Примечание

Это структура помеченного объединения. Только один из следующих верхнеуровневых ключей может быть задан: booleanValues, longValues, doubleValues, stringValues, arrayValues.

booleanValues -> (список)

Массив значений Boolean.

(логическое значение)

longValues -> (список)

Массив целых чисел.

(длинное целое)

doubleValues -> (список)

Массив чисел с плавающей точкой.

(двойное)

stringValues -> (список)

Массив строк.

(строка)

arrayValues -> (список)

Массив массивов.

(… рекурсивно …)

© Copyright 2025, Amazon Web Services. Created using Sphinx.

END_OF_DOCUMENT_MARKER

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API