Amazon RDS Data API 操作參考 - Amazon Aurora

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Amazon RDS Data API 操作參考

Amazon RDS Data API 提供下列操作來執行 SQL 陳述式。

資料 API 操作

AWS CLI 命令

描述

ExecuteStatement

aws rds-data execute-statement

在資料庫上執行 SQL 陳述式。

BatchExecuteStatement

aws rds-data batch-execute-statement

透過對資料陣列執行批次 SQL 陳述式來進行大量更新和插入操作。您可以使用參數集陣列來執行資料處理語言 (DML) 陳述式。批次 SQL 陳述式可針對個別插入和更新陳述式提供明顯的效能改善。

您可以使用任一操作來執行個別 SQL 陳述式或執行交易。對於交易,資料 API 提供下列操作。

資料 API 操作

AWS CLI 命令

描述

BeginTransaction

aws rds-data begin-transaction

開始 SQL 交易。

CommitTransaction

aws rds-data commit-transaction

結束 SQL 交易並遞交變更。

RollbackTransaction

aws rds-data rollback-transaction

執行交易轉返。

執行 SQL 陳述式和支援交易的操作具有下列常見的資料 API 參數和 AWS CLI 選項。有些操作支援其他參數或選項。

資料 API 操作參數

AWS CLI 命令選項

必要

描述

resourceArn

--resource-arn

Aurora 資料庫叢集的 Amazon Resource Name (ARN)。叢集必須與叫用資料 API AWS 帳戶 的 IAM 角色或使用者位於相同的 中。若要存取不同帳戶中的叢集,請擔任該帳戶中的角色。

secretArn

--secret-arn

用來允許存取資料庫叢集之秘密的名稱或 ARN。

RDS Data API 支援 Aurora MySQL 的下列資料類型:

  • TINYINT(1), BOOLEAN, BOOL

  • TINYINT

  • SMALLINT [SIGNED | UNSIGNED]

  • MEDIUMINT [SIGNED | UNSIGNED]

  • INT [SIGNED | UNSIGNED]

  • BIGINT [SIGNED | UNSIGNED]

  • FLOAT

  • DOUBLE

  • VARCHAR, CHAR, TEXT, ENUM

  • VARBINARY, BINARY, BLOB

  • DATE, TIME, DATETIME, TIMESTAMP

  • DECIMAL

  • JSON

  • BIT, BIT(N)

RDS Data API 支援下列 Aurora PostgreSQL 純量類型:

  • BOOL

  • BYTEA

  • DATE

  • CIDR

  • DECIMAL, NUMERIC

  • ENUM

  • FLOAT8, DOUBLE PRECISION

  • INET

  • INT, INT4, SERIAL

  • INT2, SMALLINT, SMALLSERIAL

  • INT8, BIGINT, BIGSERIAL

  • JSONB, JSON

  • REAL, FLOAT

  • TEXT, CHAR(N), VARCHAR, NAME

  • TIME

  • TIMESTAMP

  • UUID

  • VECTOR

RDS Data API 支援下列 Aurora PostgreSQL 陣列類型:

  • BOOL[], BIT[]

  • DATE[]

  • DECIMAL[], NUMERIC[]

  • FLOAT8[], DOUBLE PRECISION[]

  • INT[], INT4[]

  • INT2[]

  • INT8[], BIGINT[]

  • JSON[]

  • REAL[], FLOAT[]

  • TEXT[], CHAR(N)[], VARCHAR[], NAME[]

  • TIME[]

  • TIMESTAMP[]

  • UUID[]

您可以在對 ExecuteStatement和 進行資料 API 呼叫BatchExecuteStatement,以及在執行 AWS CLI 命令execute-statement和 時使用參數batch-execute-statement。若要使用參數,請在 SqlParameter 資料類型中指定名稱/值對。您使用 Field 資料類型來指定值。下表會將 Java Database Connectivity (JDBC) 資料類型映射至您在資料 API 呼叫中指定的資料類型。

JDBC 資料類型

資料 API 資料類型

INTEGER, TINYINT, SMALLINT, BIGINT

LONG – 、 或 STRING

FLOAT, REAL, DOUBLE

DOUBLE

DECIMAL

STRING

BOOLEAN, BIT

BOOLEAN

BLOB, BINARY, LONGVARBINARY, VARBINARY

BLOB

CLOB

STRING

其他類型 (包含與日期和時間相關的類型)

STRING

注意

您可以在 LONG 資料 API 呼叫中,針對資料庫傳回的 STRING 值指定 LONG 或資料類型。我們建議您這麼做,以避免失去極大數字的精確度,您在使用 JavaScript 時可能會發生這種情況。

某些類型,例如 DECIMALTIME,需要提示,以便資料 API 以正確的類型將String值傳遞至資料庫。若要使用提示,請在 typeHint 資料類型中包含 SqlParameter 的值。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 類型的物件傳送至資料庫。

    注意

    目前,資料 API 不支援通用唯一識別符 (UUIDs陣列。

注意

對於 Amazon Aurora PostgreSQL,資料 API 一律會傳回 UTC 時區TIMESTAMPTZ中的 Aurora PostgreSQL 資料類型。