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 DB 클러스터의 Amazon 리소스 이름(ARN)입니다. 클러스터는 데이터 API를 간접적으로 호출하는 IAM 역할 또는 사용자와 동일한 AWS 계정에 있어야 합니다. 다른 계정의 클러스터에 액세스하려면 해당 계정에서 역할을 수임합니다.

secretArn

--secret-arn

DB 클러스터에 대한 액세스를 활성화하는 보안 암호의 이름 또는 ARN.

RDS 데이터 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 데이터 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 데이터 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[]

ExecuteStatementBatchExecuteStatement에 대한 데이터 API 호출에서, 그리고 AWS CLI 명령 execute-statementbatch-execute-statement 실행 시 파라미터를 사용할 수 있습니다. 파라미터를 사용하려면 SqlParameter 데이터 형식에 이름-값 페어를 지정합니다. Field 데이터 형식으로 값을 지정하십시오. 다음 표는 JDBC(Java Database Connectivity) 데이터 형식을 Data 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 값에 대한 Data 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는 범용 고유 식별자(UUID) 배열을 지원하지 않습니다.

참고

Amazon Aurora PostgreSQL의 경우 데이터 API는 항상 UTC 시간대로 Aurora PostgreSQL 데이터 형식 TIMESTAMPTZ를 반환합니다.