Amazon RDS 数据 API 操作参考
Amazon RDS 数据 API 提供了以下操作来执行 SQL 语句。
|
Data API 操作 |
AWS CLI command |
描述 |
|---|---|---|
|
对数据库运行 SQL 语句。 |
||
|
对数据数组运行批处理 SQL 语句,以执行批量更新和插入操作。您可以使用参数集数组运行数据操作语言 (DML) 语句。相比单个插入和更新语句,批处理 SQL 语句可提供显著的性能改进。 |
您可以使用任一操作来运行单独的 SQL 语句或运行事务。针对事务,数据 API 提供了以下操作。
|
Data API 操作 |
AWS CLI command |
描述 |
|---|---|---|
|
开始 SQL 事务。 |
||
|
结束 SQL 事务并提交更改。 |
||
|
执行事务回滚。 |
执行 SQL 语句和支持事务的操作具有以下常用 Data API 参数和 AWS CLI 选项。某些操作支持其他参数或选项。
|
Data API 操作参数 |
AWS CLI 命令选项 |
必需 |
描述 |
|---|---|---|---|
|
|
|
是 |
Aurora 数据库集群的 Amazon 资源名称(ARN)。集群必须与调用数据 API 的 IAM 角色或用户位于相同的 AWS 账户中。要使用其它账户访问集群,请代入该账户中的角色。 |
|
|
|
是 |
允许访问数据库集群的密钥的名称或 ARN。 |
RDS 数据 API 对于 Aurora MySQL 支持以下数据类型:
TINYINT(1),BOOLEAN,BOOLTINYINTSMALLINT[SIGNED|UNSIGNED]MEDIUMINT[SIGNED|UNSIGNED]INT[SIGNED|UNSIGNED]BIGINT[SIGNED|UNSIGNED]FLOATDOUBLEVARCHAR,CHAR,TEXT,ENUMVARBINARY,BINARY,BLOBDATE,TIME,DATETIME,TIMESTAMPDECIMALJSONBIT,BIT(N)
RDS 数据 API 支持以下 Aurora PostgreSQL 标量类型:
BOOLBYTEADATECIDRDECIMAL,NUMERICENUMFLOAT8,DOUBLE PRECISIONINETINT,INT4,SERIALINT2,SMALLINT,SMALLSERIALINT8,BIGINT,BIGSERIALJSONB,JSONREAL,FLOATTEXT,CHAR(N),VARCHAR,NAMETIMETIMESTAMPUUIDVECTOR
RDS 数据 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 和 BatchExecuteStatement 的 Data API 调用中使用参数,或在运行 AWS CLI 命令 execute-statement 和 batch-execute-statement 时使用。要使用参数,请在 SqlParameter 数据类型中指定名称/值对。您可以使用 Field 数据类型指定值。下表将 Java 数据库连接 (JDBC) 数据类型映射到您在 Data API 调用中指定的数据类型。
|
JDBC 数据类型 |
Data API 数据类型 |
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
其他类型(包括与日期和时间有关的类型) |
|
注意
您可以在 Data API 调用中为数据库返回的 LONG 值指定 LONG 或 STRING 数据类型。建议您这样操作,以避免在使用 JavaScript 时发生超大数字失去精准性的情况。
某些类型(例如 DECIMAL 和 TIME)需要提示,以便数据 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 不支持通用唯一标识符(UUID)数组。
注意
对于 Amazon Aurora PostgreSQL,数据 API 始终以 UTC 时区返回 Aurora PostgreSQL 数据类型 TIMESTAMPTZ。