RDSDataService / Client / execute_statement
execute_statement#
- RDSDataService.Client.execute_statement(**kwargs)#
- Runs a SQL statement against a database. - Note- If a call isn’t part of a transaction because it doesn’t include the - transactionIDparameter, changes that result from the call are committed automatically.- If the binary response data from the database is more than 1 MB, the call is terminated. - See also: AWS API Documentation - Request Syntax- response = client.execute_statement( resourceArn='string', secretArn='string', sql='string', database='string', schema='string', parameters=[ { 'name': 'string', 'value': { 'isNull': True|False, 'booleanValue': True|False, 'longValue': 123, 'doubleValue': 123.0, 'stringValue': 'string', 'blobValue': b'bytes', 'arrayValue': { 'booleanValues': [ True|False, ], 'longValues': [ 123, ], 'doubleValues': [ 123.0, ], 'stringValues': [ 'string', ], 'arrayValues': [ {'... recursive ...'}, ] } }, 'typeHint': 'JSON'|'UUID'|'TIMESTAMP'|'DATE'|'TIME'|'DECIMAL' }, ], transactionId='string', includeResultMetadata=True|False, continueAfterTimeout=True|False, resultSetOptions={ 'decimalReturnType': 'STRING'|'DOUBLE_OR_LONG', 'longReturnType': 'STRING'|'LONG' }, formatRecordsAs='NONE'|'JSON' ) - Parameters:
- resourceArn (string) – - [REQUIRED] - The Amazon Resource Name (ARN) of the Aurora Serverless DB cluster. 
- secretArn (string) – - [REQUIRED] - The ARN of the secret that enables access to the DB cluster. Enter the database user name and password for the credentials in the secret. - For information about creating the secret, see Create a database secret. 
- sql (string) – - [REQUIRED] - The SQL statement to run. 
- database (string) – The name of the database. 
- schema (string) – - The name of the database schema. - Note- Currently, the - schemaparameter isn’t supported.
- parameters (list) – - The parameters for the SQL statement. - Note- Array parameters are not supported. - (dict) – - A parameter used in a SQL statement. - name (string) – - The name of the parameter. 
- value (dict) – - The value of the parameter. - Note- This is a Tagged Union structure. Only one of the following top level keys can be set: - isNull,- booleanValue,- longValue,- doubleValue,- stringValue,- blobValue,- arrayValue.- isNull (boolean) – - A NULL value. 
- booleanValue (boolean) – - A value of Boolean data type. 
- longValue (integer) – - A value of long data type. 
- doubleValue (float) – - A value of double data type. 
- stringValue (string) – - A value of string data type. 
- blobValue (bytes) – - A value of BLOB data type. 
- arrayValue (dict) – - An array of values. - Note- This is a Tagged Union structure. Only one of the following top level keys can be set: - booleanValues,- longValues,- doubleValues,- stringValues,- arrayValues.- booleanValues (list) – - An array of Boolean values. - (boolean) – 
 
- longValues (list) – - An array of integers. - (integer) – 
 
- doubleValues (list) – - An array of floating-point numbers. - (float) – 
 
- stringValues (list) – - An array of strings. - (string) – 
 
- arrayValues (list) – - An array of arrays. - (dict) – - Contains an array. - Note- This is a Tagged Union structure. Only one of the following top level keys can be set: - booleanValues,- longValues,- doubleValues,- stringValues,- arrayValues.
 
 
 
- typeHint (string) – - A hint that specifies the correct object type for data type mapping. Possible values are as follows: - DATE- The corresponding- Stringparameter value is sent as an object of- DATEtype to the database. The accepted format is- YYYY-MM-DD.
- DECIMAL- The corresponding- Stringparameter value is sent as an object of- DECIMALtype to the database.
- JSON- The corresponding- Stringparameter value is sent as an object of- JSONtype to the database.
- TIME- The corresponding- Stringparameter value is sent as an object of- TIMEtype to the database. The accepted format is- HH:MM:SS[.FFF].
- TIMESTAMP- The corresponding- Stringparameter value is sent as an object of- TIMESTAMPtype to the database. The accepted format is- YYYY-MM-DD HH:MM:SS[.FFF].
- UUID- The corresponding- Stringparameter value is sent as an object of- UUIDtype to the database.
 
 
 
- transactionId (string) – - The identifier of a transaction that was started by using the - BeginTransactionoperation. Specify the transaction ID of the transaction that you want to include the SQL statement in.- If the SQL statement is not part of a transaction, don’t set this parameter. 
- includeResultMetadata (boolean) – A value that indicates whether to include metadata in the results. 
- continueAfterTimeout (boolean) – - A value that indicates whether to continue running the statement after the call times out. By default, the statement stops running when the call times out. - Note- For DDL statements, we recommend continuing to run the statement after the call times out. When a DDL statement terminates before it is finished running, it can result in errors and possibly corrupted data structures. 
- resultSetOptions (dict) – - Options that control how the result set is returned. - decimalReturnType (string) – - A value that indicates how a field of - DECIMALtype is represented in the response. The value of- STRING, the default, specifies that it is converted to a String value. The value of- DOUBLE_OR_LONGspecifies that it is converted to a Long value if its scale is 0, or to a Double value otherwise.- Note- Conversion to Double or Long can result in roundoff errors due to precision loss. We recommend converting to String, especially when working with currency values. 
- longReturnType (string) – - A value that indicates how a field of - LONGtype is represented. Allowed values are- LONGand- STRING. The default is- LONG. Specify- STRINGif the length or precision of numeric values might cause truncation or rounding errors.
 
- formatRecordsAs (string) – - A value that indicates whether to format the result set as a single JSON string. This parameter only applies to - SELECTstatements and is ignored for other types of statements. Allowed values are- NONEand- JSON. The default value is- NONE. The result is returned in the- formattedRecordsfield.- For usage information about the JSON format for result sets, see Using the Data API in the Amazon Aurora User Guide. 
 
- Return type:
- dict 
- Returns:
- Response Syntax- { 'records': [ [ { 'isNull': True|False, 'booleanValue': True|False, 'longValue': 123, 'doubleValue': 123.0, 'stringValue': 'string', 'blobValue': b'bytes', 'arrayValue': { 'booleanValues': [ True|False, ], 'longValues': [ 123, ], 'doubleValues': [ 123.0, ], 'stringValues': [ 'string', ], 'arrayValues': [ {'... recursive ...'}, ] } }, ], ], 'columnMetadata': [ { 'name': 'string', 'type': 123, 'typeName': 'string', 'label': 'string', 'schemaName': 'string', 'tableName': 'string', 'isAutoIncrement': True|False, 'isSigned': True|False, 'isCurrency': True|False, 'isCaseSensitive': True|False, 'nullable': 123, 'precision': 123, 'scale': 123, 'arrayBaseColumnType': 123 }, ], 'numberOfRecordsUpdated': 123, 'generatedFields': [ { 'isNull': True|False, 'booleanValue': True|False, 'longValue': 123, 'doubleValue': 123.0, 'stringValue': 'string', 'blobValue': b'bytes', 'arrayValue': { 'booleanValues': [ True|False, ], 'longValues': [ 123, ], 'doubleValues': [ 123.0, ], 'stringValues': [ 'string', ], 'arrayValues': [ {'... recursive ...'}, ] } }, ], 'formattedRecords': 'string' } - Response Structure- (dict) – - The response elements represent the output of a request to run a SQL statement against a database. - records (list) – - The records returned by the SQL statement. This field is blank if the - formatRecordsAsparameter is set to- JSON.- (list) – - (dict) – - Contains a value. - Note- This is a Tagged Union structure. Only one of the following top level keys will be set: - isNull,- booleanValue,- longValue,- doubleValue,- stringValue,- blobValue,- arrayValue. If a client receives an unknown member it will set- SDK_UNKNOWN_MEMBERas the top level key, which maps to the name or tag of the unknown member. The structure of- SDK_UNKNOWN_MEMBERis as follows:- 'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'} - isNull (boolean) – - A NULL value. 
- booleanValue (boolean) – - A value of Boolean data type. 
- longValue (integer) – - A value of long data type. 
- doubleValue (float) – - A value of double data type. 
- stringValue (string) – - A value of string data type. 
- blobValue (bytes) – - A value of BLOB data type. 
- arrayValue (dict) – - An array of values. - Note- This is a Tagged Union structure. Only one of the following top level keys will be set: - booleanValues,- longValues,- doubleValues,- stringValues,- arrayValues. If a client receives an unknown member it will set- SDK_UNKNOWN_MEMBERas the top level key, which maps to the name or tag of the unknown member. The structure of- SDK_UNKNOWN_MEMBERis as follows:- 'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'} - booleanValues (list) – - An array of Boolean values. - (boolean) – 
 
- longValues (list) – - An array of integers. - (integer) – 
 
- doubleValues (list) – - An array of floating-point numbers. - (float) – 
 
- stringValues (list) – - An array of strings. - (string) – 
 
- arrayValues (list) – - An array of arrays. - (dict) – - Contains an array. - Note- This is a Tagged Union structure. Only one of the following top level keys will be set: - booleanValues,- longValues,- doubleValues,- stringValues,- arrayValues. If a client receives an unknown member it will set- SDK_UNKNOWN_MEMBERas the top level key, which maps to the name or tag of the unknown member. The structure of- SDK_UNKNOWN_MEMBERis as follows:- 'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'} 
 
 
 
 
 
- columnMetadata (list) – - Metadata for the columns included in the results. This field is blank if the - formatRecordsAsparameter is set to- JSON.- (dict) – - Contains the metadata for a column. - name (string) – - The name of the column. 
- type (integer) – - The type of the column. 
- typeName (string) – - The database-specific data type of the column. 
- label (string) – - The label for the column. 
- schemaName (string) – - The name of the schema that owns the table that includes the column. 
- tableName (string) – - The name of the table that includes the column. 
- isAutoIncrement (boolean) – - A value that indicates whether the column increments automatically. 
- isSigned (boolean) – - A value that indicates whether an integer column is signed. 
- isCurrency (boolean) – - A value that indicates whether the column contains currency values. 
- isCaseSensitive (boolean) – - A value that indicates whether the column is case-sensitive. 
- nullable (integer) – - A value that indicates whether the column is nullable. 
- precision (integer) – - The precision value of a decimal number column. 
- scale (integer) – - The scale value of a decimal number column. 
- arrayBaseColumnType (integer) – - The type of the column. 
 
 
- numberOfRecordsUpdated (integer) – - The number of records updated by the request. 
- generatedFields (list) – - Values for fields generated during a DML request. - Note- The - generatedFieldsdata isn’t supported by Aurora PostgreSQL. To get the values of generated fields, use the- RETURNINGclause. For more information, see Returning Data From Modified Rows in the PostgreSQL documentation.- (dict) – - Contains a value. - Note- This is a Tagged Union structure. Only one of the following top level keys will be set: - isNull,- booleanValue,- longValue,- doubleValue,- stringValue,- blobValue,- arrayValue. If a client receives an unknown member it will set- SDK_UNKNOWN_MEMBERas the top level key, which maps to the name or tag of the unknown member. The structure of- SDK_UNKNOWN_MEMBERis as follows:- 'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'} - isNull (boolean) – - A NULL value. 
- booleanValue (boolean) – - A value of Boolean data type. 
- longValue (integer) – - A value of long data type. 
- doubleValue (float) – - A value of double data type. 
- stringValue (string) – - A value of string data type. 
- blobValue (bytes) – - A value of BLOB data type. 
- arrayValue (dict) – - An array of values. - Note- This is a Tagged Union structure. Only one of the following top level keys will be set: - booleanValues,- longValues,- doubleValues,- stringValues,- arrayValues. If a client receives an unknown member it will set- SDK_UNKNOWN_MEMBERas the top level key, which maps to the name or tag of the unknown member. The structure of- SDK_UNKNOWN_MEMBERis as follows:- 'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'} - booleanValues (list) – - An array of Boolean values. - (boolean) – 
 
- longValues (list) – - An array of integers. - (integer) – 
 
- doubleValues (list) – - An array of floating-point numbers. - (float) – 
 
- stringValues (list) – - An array of strings. - (string) – 
 
- arrayValues (list) – - An array of arrays. - (dict) – - Contains an array. - Note- This is a Tagged Union structure. Only one of the following top level keys will be set: - booleanValues,- longValues,- doubleValues,- stringValues,- arrayValues. If a client receives an unknown member it will set- SDK_UNKNOWN_MEMBERas the top level key, which maps to the name or tag of the unknown member. The structure of- SDK_UNKNOWN_MEMBERis as follows:- 'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'} 
 
 
 
 
- formattedRecords (string) – - A string value that represents the result set of a - SELECTstatement in JSON format. This value is only present when the- formatRecordsAsparameter is set to- JSON.- The size limit for this field is currently 10 MB. If the JSON-formatted string representing the result set requires more than 10 MB, the call returns an error. 
 
 
 - Exceptions- RDSDataService.Client.exceptions.SecretsErrorException
- RDSDataService.Client.exceptions.HttpEndpointNotEnabledException
- RDSDataService.Client.exceptions.DatabaseErrorException
- RDSDataService.Client.exceptions.DatabaseResumingException
- RDSDataService.Client.exceptions.DatabaseUnavailableException
- RDSDataService.Client.exceptions.TransactionNotFoundException
- RDSDataService.Client.exceptions.InvalidSecretException
- RDSDataService.Client.exceptions.ServiceUnavailableError
- RDSDataService.Client.exceptions.ForbiddenException
- RDSDataService.Client.exceptions.DatabaseNotFoundException
- RDSDataService.Client.exceptions.AccessDeniedException
- RDSDataService.Client.exceptions.BadRequestException
- RDSDataService.Client.exceptions.StatementTimeoutException
- RDSDataService.Client.exceptions.InternalServerErrorException
- RDSDataService.Client.exceptions.UnsupportedResultException