[ aws . redshift-data ]

execute-statement

Description

Runs an SQL statement, which can be data manipulation language (DML) or data definition language (DDL). This statement must be a single SQL statement. Depending on the authorization method, use one of the following combinations of request parameters:

  • Secrets Manager - when connecting to a cluster, specify the Amazon Resource Name (ARN) of the secret, the database name, and the cluster identifier that matches the cluster in the secret. When connecting to a serverless workgroup, specify the Amazon Resource Name (ARN) of the secret and the database name.

  • Temporary credentials - when connecting to a cluster, specify the cluster identifier, the database name, and the database user name. Also, permission to call the redshift:GetClusterCredentials operation is required. When connecting to a serverless workgroup, specify the workgroup name and database name. Also, permission to call the redshift-serverless:GetCredentials operation is required.

See also: AWS API Documentation

See ‘aws help’ for descriptions of global parameters.

Synopsis

  execute-statement
[--cluster-identifier <value>]
--database <value>
[--db-user <value>]
[--parameters <value>]
[--secret-arn <value>]
--sql <value>
[--statement-name <value>]
[--with-event | --no-with-event]
[--workgroup-name <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]

Options

--cluster-identifier (string)

The cluster identifier. This parameter is required when connecting to a cluster and authenticating using either Secrets Manager or temporary credentials.

--database (string)

The name of the database. This parameter is required when authenticating using either Secrets Manager or temporary credentials.

--db-user (string)

The database user name. This parameter is required when connecting to a cluster and authenticating using temporary credentials.

--parameters (list)

The parameters for the SQL statement.

(structure)

A parameter used in a SQL statement.

name -> (string)

The name of the parameter.

value -> (string)

The value of the parameter. Amazon Redshift implicitly converts to the proper data type. For more inforation, see Data types in the Amazon Redshift Database Developer Guide .

Shorthand Syntax:

name=string,value=string ...

JSON Syntax:

[
  {
    "name": "string",
    "value": "string"
  }
  ...
]

--secret-arn (string)

The name or ARN of the secret that enables access to the database. This parameter is required when authenticating using Secrets Manager.

--sql (string)

The SQL statement text to run.

--statement-name (string)

The name of the SQL statement. You can name the SQL statement when you create it to identify the query.

--with-event | --no-with-event (boolean)

A value that indicates whether to send an event to the Amazon EventBridge event bus after the SQL statement runs.

--workgroup-name (string)

The serverless workgroup name. This parameter is required when connecting to a serverless workgroup and authenticating using either Secrets Manager or temporary credentials.

--cli-input-json | --cli-input-yaml (string) Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. Similarly, if provided yaml-input it will print a sample input YAML that can be used with --cli-input-yaml. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.

See ‘aws help’ for descriptions of global parameters.

Output

ClusterIdentifier -> (string)

The cluster identifier. This element is not returned when connecting to a serverless workgroup.

CreatedAt -> (timestamp)

The date and time (UTC) the statement was created.

Database -> (string)

The name of the database.

DbUser -> (string)

The database user name.

Id -> (string)

The identifier of the SQL statement whose results are to be fetched. This value is a universally unique identifier (UUID) generated by Amazon Redshift Data API.

SecretArn -> (string)

The name or ARN of the secret that enables access to the database.

WorkgroupName -> (string)

The serverless workgroup name. This element is not returned when connecting to a provisioned cluster.