Interface RedshiftDataClient

All Superinterfaces:
AutoCloseable, AwsClient, SdkAutoCloseable, SdkClient

@Generated("software.amazon.awssdk:codegen") @ThreadSafe public interface RedshiftDataClient extends AwsClient
Service client for accessing Redshift Data API Service. This can be created using the static builder() method.

You can use the Amazon Redshift Data API to run queries on Amazon Redshift tables. You can run SQL statements, which are committed if the statement succeeds.

For more information about the Amazon Redshift Data API and CLI usage examples, see Using the Amazon Redshift Data API in the Amazon Redshift Management Guide.

  • Field Details

  • Method Details

    • batchExecuteStatement

      Runs one or more SQL statements, which can be data manipulation language (DML) or data definition language (DDL). Depending on the authorization method, use one of the following combinations of request parameters:

      • Secrets Manager - when connecting to a cluster, provide the secret-arn of a secret stored in Secrets Manager which has username and password. The specified secret contains credentials to connect to the database you specify. When you are connecting to a cluster, you also supply the database name, If you provide a cluster identifier (dbClusterIdentifier), it must match the cluster identifier stored in the secret. When you are connecting to a serverless workgroup, you also supply the database name.

      • Temporary credentials - when connecting to your data warehouse, choose one of the following options:

        • When connecting to a serverless workgroup, specify the workgroup name and database name. The database user name is derived from the IAM identity. For example, arn:iam::123456789012:user:foo has the database user name IAM:foo. Also, permission to call the redshift-serverless:GetCredentials operation is required.

        • When connecting to a cluster as an IAM identity, specify the cluster identifier and the database name. The database user name is derived from the IAM identity. For example, arn:iam::123456789012:user:foo has the database user name IAM:foo. Also, permission to call the redshift:GetClusterCredentialsWithIAM operation is required.

        • When connecting to a cluster as a database user, specify the cluster identifier, the database name, and the database user name. Also, permission to call the redshift:GetClusterCredentials operation is required.

      For more information about the Amazon Redshift Data API and CLI usage examples, see Using the Amazon Redshift Data API in the Amazon Redshift Management Guide.

      Parameters:
      batchExecuteStatementRequest -
      Returns:
      Result of the BatchExecuteStatement operation returned by the service.
      See Also:
    • batchExecuteStatement

      Runs one or more SQL statements, which can be data manipulation language (DML) or data definition language (DDL). Depending on the authorization method, use one of the following combinations of request parameters:

      • Secrets Manager - when connecting to a cluster, provide the secret-arn of a secret stored in Secrets Manager which has username and password. The specified secret contains credentials to connect to the database you specify. When you are connecting to a cluster, you also supply the database name, If you provide a cluster identifier (dbClusterIdentifier), it must match the cluster identifier stored in the secret. When you are connecting to a serverless workgroup, you also supply the database name.

      • Temporary credentials - when connecting to your data warehouse, choose one of the following options:

        • When connecting to a serverless workgroup, specify the workgroup name and database name. The database user name is derived from the IAM identity. For example, arn:iam::123456789012:user:foo has the database user name IAM:foo. Also, permission to call the redshift-serverless:GetCredentials operation is required.

        • When connecting to a cluster as an IAM identity, specify the cluster identifier and the database name. The database user name is derived from the IAM identity. For example, arn:iam::123456789012:user:foo has the database user name IAM:foo. Also, permission to call the redshift:GetClusterCredentialsWithIAM operation is required.

        • When connecting to a cluster as a database user, specify the cluster identifier, the database name, and the database user name. Also, permission to call the redshift:GetClusterCredentials operation is required.

      For more information about the Amazon Redshift Data API and CLI usage examples, see Using the Amazon Redshift Data API in the Amazon Redshift Management Guide.


      This is a convenience which creates an instance of the BatchExecuteStatementRequest.Builder avoiding the need to create one manually via BatchExecuteStatementRequest.builder()

      Parameters:
      batchExecuteStatementRequest - A Consumer that will call methods on BatchExecuteStatementRequest.Builder to create a request.
      Returns:
      Result of the BatchExecuteStatement operation returned by the service.
      See Also:
    • cancelStatement

      Cancels a running query. To be canceled, a query must be running.

      For more information about the Amazon Redshift Data API and CLI usage examples, see Using the Amazon Redshift Data API in the Amazon Redshift Management Guide.

      Parameters:
      cancelStatementRequest -
      Returns:
      Result of the CancelStatement operation returned by the service.
      See Also:
    • cancelStatement

      Cancels a running query. To be canceled, a query must be running.

      For more information about the Amazon Redshift Data API and CLI usage examples, see Using the Amazon Redshift Data API in the Amazon Redshift Management Guide.


      This is a convenience which creates an instance of the CancelStatementRequest.Builder avoiding the need to create one manually via CancelStatementRequest.builder()

      Parameters:
      cancelStatementRequest - A Consumer that will call methods on CancelStatementRequest.Builder to create a request.
      Returns:
      Result of the CancelStatement operation returned by the service.
      See Also:
    • describeStatement

      Describes the details about a specific instance when a query was run by the Amazon Redshift Data API. The information includes when the query started, when it finished, the query status, the number of rows returned, and the SQL statement.

      For more information about the Amazon Redshift Data API and CLI usage examples, see Using the Amazon Redshift Data API in the Amazon Redshift Management Guide.

      Parameters:
      describeStatementRequest -
      Returns:
      Result of the DescribeStatement operation returned by the service.
      See Also:
    • describeStatement

      Describes the details about a specific instance when a query was run by the Amazon Redshift Data API. The information includes when the query started, when it finished, the query status, the number of rows returned, and the SQL statement.

      For more information about the Amazon Redshift Data API and CLI usage examples, see Using the Amazon Redshift Data API in the Amazon Redshift Management Guide.


      This is a convenience which creates an instance of the DescribeStatementRequest.Builder avoiding the need to create one manually via DescribeStatementRequest.builder()

      Parameters:
      describeStatementRequest - A Consumer that will call methods on DescribeStatementRequest.Builder to create a request.
      Returns:
      Result of the DescribeStatement operation returned by the service.
      See Also:
    • describeTable

      Describes the detailed information about a table from metadata in the cluster. The information includes its columns. A token is returned to page through the column list. Depending on the authorization method, use one of the following combinations of request parameters:

      • Secrets Manager - when connecting to a cluster, provide the secret-arn of a secret stored in Secrets Manager which has username and password. The specified secret contains credentials to connect to the database you specify. When you are connecting to a cluster, you also supply the database name, If you provide a cluster identifier (dbClusterIdentifier), it must match the cluster identifier stored in the secret. When you are connecting to a serverless workgroup, you also supply the database name.

      • Temporary credentials - when connecting to your data warehouse, choose one of the following options:

        • When connecting to a serverless workgroup, specify the workgroup name and database name. The database user name is derived from the IAM identity. For example, arn:iam::123456789012:user:foo has the database user name IAM:foo. Also, permission to call the redshift-serverless:GetCredentials operation is required.

        • When connecting to a cluster as an IAM identity, specify the cluster identifier and the database name. The database user name is derived from the IAM identity. For example, arn:iam::123456789012:user:foo has the database user name IAM:foo. Also, permission to call the redshift:GetClusterCredentialsWithIAM operation is required.

        • When connecting to a cluster as a database user, specify the cluster identifier, the database name, and the database user name. Also, permission to call the redshift:GetClusterCredentials operation is required.

      For more information about the Amazon Redshift Data API and CLI usage examples, see Using the Amazon Redshift Data API in the Amazon Redshift Management Guide.

      Parameters:
      describeTableRequest -
      Returns:
      Result of the DescribeTable operation returned by the service.
      See Also:
    • describeTable

      Describes the detailed information about a table from metadata in the cluster. The information includes its columns. A token is returned to page through the column list. Depending on the authorization method, use one of the following combinations of request parameters:

      • Secrets Manager - when connecting to a cluster, provide the secret-arn of a secret stored in Secrets Manager which has username and password. The specified secret contains credentials to connect to the database you specify. When you are connecting to a cluster, you also supply the database name, If you provide a cluster identifier (dbClusterIdentifier), it must match the cluster identifier stored in the secret. When you are connecting to a serverless workgroup, you also supply the database name.

      • Temporary credentials - when connecting to your data warehouse, choose one of the following options:

        • When connecting to a serverless workgroup, specify the workgroup name and database name. The database user name is derived from the IAM identity. For example, arn:iam::123456789012:user:foo has the database user name IAM:foo. Also, permission to call the redshift-serverless:GetCredentials operation is required.

        • When connecting to a cluster as an IAM identity, specify the cluster identifier and the database name. The database user name is derived from the IAM identity. For example, arn:iam::123456789012:user:foo has the database user name IAM:foo. Also, permission to call the redshift:GetClusterCredentialsWithIAM operation is required.

        • When connecting to a cluster as a database user, specify the cluster identifier, the database name, and the database user name. Also, permission to call the redshift:GetClusterCredentials operation is required.

      For more information about the Amazon Redshift Data API and CLI usage examples, see Using the Amazon Redshift Data API in the Amazon Redshift Management Guide.


      This is a convenience which creates an instance of the DescribeTableRequest.Builder avoiding the need to create one manually via DescribeTableRequest.builder()

      Parameters:
      describeTableRequest - A Consumer that will call methods on DescribeTableRequest.Builder to create a request.
      Returns:
      Result of the DescribeTable operation returned by the service.
      See Also:
    • describeTablePaginator

      This is a variant of describeTable(software.amazon.awssdk.services.redshiftdata.model.DescribeTableRequest) operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will internally handle making service calls for you.

      When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response pages by making service calls until there are no pages left or your iteration stops. If there are errors in your request, you will see the failures only after you start iterating through the iterable.

      The following are few ways to iterate through the response pages:

      1) Using a Stream
       
       software.amazon.awssdk.services.redshiftdata.paginators.DescribeTableIterable responses = client.describeTablePaginator(request);
       responses.stream().forEach(....);
       
       
      2) Using For loop
       {
           @code
           software.amazon.awssdk.services.redshiftdata.paginators.DescribeTableIterable responses = client
                   .describeTablePaginator(request);
           for (software.amazon.awssdk.services.redshiftdata.model.DescribeTableResponse response : responses) {
               // do something;
           }
       }
       
      3) Use iterator directly
       
       software.amazon.awssdk.services.redshiftdata.paginators.DescribeTableIterable responses = client.describeTablePaginator(request);
       responses.iterator().forEachRemaining(....);
       
       

      Please notice that the configuration of MaxResults won't limit the number of results you get with the paginator. It only limits the number of results in each page.

      Note: If you prefer to have control on service calls, use the describeTable(software.amazon.awssdk.services.redshiftdata.model.DescribeTableRequest) operation.

      Parameters:
      describeTableRequest -
      Returns:
      A custom iterable that can be used to iterate through all the response pages.
      See Also:
    • describeTablePaginator

      This is a variant of describeTable(software.amazon.awssdk.services.redshiftdata.model.DescribeTableRequest) operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will internally handle making service calls for you.

      When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response pages by making service calls until there are no pages left or your iteration stops. If there are errors in your request, you will see the failures only after you start iterating through the iterable.

      The following are few ways to iterate through the response pages:

      1) Using a Stream
       
       software.amazon.awssdk.services.redshiftdata.paginators.DescribeTableIterable responses = client.describeTablePaginator(request);
       responses.stream().forEach(....);
       
       
      2) Using For loop
       {
           @code
           software.amazon.awssdk.services.redshiftdata.paginators.DescribeTableIterable responses = client
                   .describeTablePaginator(request);
           for (software.amazon.awssdk.services.redshiftdata.model.DescribeTableResponse response : responses) {
               // do something;
           }
       }
       
      3) Use iterator directly
       
       software.amazon.awssdk.services.redshiftdata.paginators.DescribeTableIterable responses = client.describeTablePaginator(request);
       responses.iterator().forEachRemaining(....);
       
       

      Please notice that the configuration of MaxResults won't limit the number of results you get with the paginator. It only limits the number of results in each page.

      Note: If you prefer to have control on service calls, use the describeTable(software.amazon.awssdk.services.redshiftdata.model.DescribeTableRequest) operation.


      This is a convenience which creates an instance of the DescribeTableRequest.Builder avoiding the need to create one manually via DescribeTableRequest.builder()

      Parameters:
      describeTableRequest - A Consumer that will call methods on DescribeTableRequest.Builder to create a request.
      Returns:
      A custom iterable that can be used to iterate through all the response pages.
      See Also:
    • executeStatement

      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, provide the secret-arn of a secret stored in Secrets Manager which has username and password. The specified secret contains credentials to connect to the database you specify. When you are connecting to a cluster, you also supply the database name, If you provide a cluster identifier (dbClusterIdentifier), it must match the cluster identifier stored in the secret. When you are connecting to a serverless workgroup, you also supply the database name.

      • Temporary credentials - when connecting to your data warehouse, choose one of the following options:

        • When connecting to a serverless workgroup, specify the workgroup name and database name. The database user name is derived from the IAM identity. For example, arn:iam::123456789012:user:foo has the database user name IAM:foo. Also, permission to call the redshift-serverless:GetCredentials operation is required.

        • When connecting to a cluster as an IAM identity, specify the cluster identifier and the database name. The database user name is derived from the IAM identity. For example, arn:iam::123456789012:user:foo has the database user name IAM:foo. Also, permission to call the redshift:GetClusterCredentialsWithIAM operation is required.

        • When connecting to a cluster as a database user, specify the cluster identifier, the database name, and the database user name. Also, permission to call the redshift:GetClusterCredentials operation is required.

      For more information about the Amazon Redshift Data API and CLI usage examples, see Using the Amazon Redshift Data API in the Amazon Redshift Management Guide.

      Parameters:
      executeStatementRequest -
      Returns:
      Result of the ExecuteStatement operation returned by the service.
      See Also:
    • executeStatement

      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, provide the secret-arn of a secret stored in Secrets Manager which has username and password. The specified secret contains credentials to connect to the database you specify. When you are connecting to a cluster, you also supply the database name, If you provide a cluster identifier (dbClusterIdentifier), it must match the cluster identifier stored in the secret. When you are connecting to a serverless workgroup, you also supply the database name.

      • Temporary credentials - when connecting to your data warehouse, choose one of the following options:

        • When connecting to a serverless workgroup, specify the workgroup name and database name. The database user name is derived from the IAM identity. For example, arn:iam::123456789012:user:foo has the database user name IAM:foo. Also, permission to call the redshift-serverless:GetCredentials operation is required.

        • When connecting to a cluster as an IAM identity, specify the cluster identifier and the database name. The database user name is derived from the IAM identity. For example, arn:iam::123456789012:user:foo has the database user name IAM:foo. Also, permission to call the redshift:GetClusterCredentialsWithIAM operation is required.

        • When connecting to a cluster as a database user, specify the cluster identifier, the database name, and the database user name. Also, permission to call the redshift:GetClusterCredentials operation is required.

      For more information about the Amazon Redshift Data API and CLI usage examples, see Using the Amazon Redshift Data API in the Amazon Redshift Management Guide.


      This is a convenience which creates an instance of the ExecuteStatementRequest.Builder avoiding the need to create one manually via ExecuteStatementRequest.builder()

      Parameters:
      executeStatementRequest - A Consumer that will call methods on ExecuteStatementRequest.Builder to create a request.
      Returns:
      Result of the ExecuteStatement operation returned by the service.
      See Also:
    • getStatementResult

      Fetches the temporarily cached result of an SQL statement. A token is returned to page through the statement results.

      For more information about the Amazon Redshift Data API and CLI usage examples, see Using the Amazon Redshift Data API in the Amazon Redshift Management Guide.

      Parameters:
      getStatementResultRequest -
      Returns:
      Result of the GetStatementResult operation returned by the service.
      See Also:
    • getStatementResult

      Fetches the temporarily cached result of an SQL statement. A token is returned to page through the statement results.

      For more information about the Amazon Redshift Data API and CLI usage examples, see Using the Amazon Redshift Data API in the Amazon Redshift Management Guide.


      This is a convenience which creates an instance of the GetStatementResultRequest.Builder avoiding the need to create one manually via GetStatementResultRequest.builder()

      Parameters:
      getStatementResultRequest - A Consumer that will call methods on GetStatementResultRequest.Builder to create a request.
      Returns:
      Result of the GetStatementResult operation returned by the service.
      See Also:
    • getStatementResultPaginator

      This is a variant of getStatementResult(software.amazon.awssdk.services.redshiftdata.model.GetStatementResultRequest) operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will internally handle making service calls for you.

      When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response pages by making service calls until there are no pages left or your iteration stops. If there are errors in your request, you will see the failures only after you start iterating through the iterable.

      The following are few ways to iterate through the response pages:

      1) Using a Stream
       
       software.amazon.awssdk.services.redshiftdata.paginators.GetStatementResultIterable responses = client.getStatementResultPaginator(request);
       responses.stream().forEach(....);
       
       
      2) Using For loop
       {
           @code
           software.amazon.awssdk.services.redshiftdata.paginators.GetStatementResultIterable responses = client
                   .getStatementResultPaginator(request);
           for (software.amazon.awssdk.services.redshiftdata.model.GetStatementResultResponse response : responses) {
               // do something;
           }
       }
       
      3) Use iterator directly
       
       software.amazon.awssdk.services.redshiftdata.paginators.GetStatementResultIterable responses = client.getStatementResultPaginator(request);
       responses.iterator().forEachRemaining(....);
       
       

      Please notice that the configuration of null won't limit the number of results you get with the paginator. It only limits the number of results in each page.

      Note: If you prefer to have control on service calls, use the getStatementResult(software.amazon.awssdk.services.redshiftdata.model.GetStatementResultRequest) operation.

      Parameters:
      getStatementResultRequest -
      Returns:
      A custom iterable that can be used to iterate through all the response pages.
      See Also:
    • getStatementResultPaginator

      This is a variant of getStatementResult(software.amazon.awssdk.services.redshiftdata.model.GetStatementResultRequest) operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will internally handle making service calls for you.

      When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response pages by making service calls until there are no pages left or your iteration stops. If there are errors in your request, you will see the failures only after you start iterating through the iterable.

      The following are few ways to iterate through the response pages:

      1) Using a Stream
       
       software.amazon.awssdk.services.redshiftdata.paginators.GetStatementResultIterable responses = client.getStatementResultPaginator(request);
       responses.stream().forEach(....);
       
       
      2) Using For loop
       {
           @code
           software.amazon.awssdk.services.redshiftdata.paginators.GetStatementResultIterable responses = client
                   .getStatementResultPaginator(request);
           for (software.amazon.awssdk.services.redshiftdata.model.GetStatementResultResponse response : responses) {
               // do something;
           }
       }
       
      3) Use iterator directly
       
       software.amazon.awssdk.services.redshiftdata.paginators.GetStatementResultIterable responses = client.getStatementResultPaginator(request);
       responses.iterator().forEachRemaining(....);
       
       

      Please notice that the configuration of null won't limit the number of results you get with the paginator. It only limits the number of results in each page.

      Note: If you prefer to have control on service calls, use the getStatementResult(software.amazon.awssdk.services.redshiftdata.model.GetStatementResultRequest) operation.


      This is a convenience which creates an instance of the GetStatementResultRequest.Builder avoiding the need to create one manually via GetStatementResultRequest.builder()

      Parameters:
      getStatementResultRequest - A Consumer that will call methods on GetStatementResultRequest.Builder to create a request.
      Returns:
      A custom iterable that can be used to iterate through all the response pages.
      See Also:
    • listDatabases

      List the databases in a cluster. A token is returned to page through the database list. Depending on the authorization method, use one of the following combinations of request parameters:

      • Secrets Manager - when connecting to a cluster, provide the secret-arn of a secret stored in Secrets Manager which has username and password. The specified secret contains credentials to connect to the database you specify. When you are connecting to a cluster, you also supply the database name, If you provide a cluster identifier (dbClusterIdentifier), it must match the cluster identifier stored in the secret. When you are connecting to a serverless workgroup, you also supply the database name.

      • Temporary credentials - when connecting to your data warehouse, choose one of the following options:

        • When connecting to a serverless workgroup, specify the workgroup name and database name. The database user name is derived from the IAM identity. For example, arn:iam::123456789012:user:foo has the database user name IAM:foo. Also, permission to call the redshift-serverless:GetCredentials operation is required.

        • When connecting to a cluster as an IAM identity, specify the cluster identifier and the database name. The database user name is derived from the IAM identity. For example, arn:iam::123456789012:user:foo has the database user name IAM:foo. Also, permission to call the redshift:GetClusterCredentialsWithIAM operation is required.

        • When connecting to a cluster as a database user, specify the cluster identifier, the database name, and the database user name. Also, permission to call the redshift:GetClusterCredentials operation is required.

      For more information about the Amazon Redshift Data API and CLI usage examples, see Using the Amazon Redshift Data API in the Amazon Redshift Management Guide.

      Parameters:
      listDatabasesRequest -
      Returns:
      Result of the ListDatabases operation returned by the service.
      See Also:
    • listDatabases

      List the databases in a cluster. A token is returned to page through the database list. Depending on the authorization method, use one of the following combinations of request parameters:

      • Secrets Manager - when connecting to a cluster, provide the secret-arn of a secret stored in Secrets Manager which has username and password. The specified secret contains credentials to connect to the database you specify. When you are connecting to a cluster, you also supply the database name, If you provide a cluster identifier (dbClusterIdentifier), it must match the cluster identifier stored in the secret. When you are connecting to a serverless workgroup, you also supply the database name.

      • Temporary credentials - when connecting to your data warehouse, choose one of the following options:

        • When connecting to a serverless workgroup, specify the workgroup name and database name. The database user name is derived from the IAM identity. For example, arn:iam::123456789012:user:foo has the database user name IAM:foo. Also, permission to call the redshift-serverless:GetCredentials operation is required.

        • When connecting to a cluster as an IAM identity, specify the cluster identifier and the database name. The database user name is derived from the IAM identity. For example, arn:iam::123456789012:user:foo has the database user name IAM:foo. Also, permission to call the redshift:GetClusterCredentialsWithIAM operation is required.

        • When connecting to a cluster as a database user, specify the cluster identifier, the database name, and the database user name. Also, permission to call the redshift:GetClusterCredentials operation is required.

      For more information about the Amazon Redshift Data API and CLI usage examples, see Using the Amazon Redshift Data API in the Amazon Redshift Management Guide.


      This is a convenience which creates an instance of the ListDatabasesRequest.Builder avoiding the need to create one manually via ListDatabasesRequest.builder()

      Parameters:
      listDatabasesRequest - A Consumer that will call methods on ListDatabasesRequest.Builder to create a request.
      Returns:
      Result of the ListDatabases operation returned by the service.
      See Also:
    • listDatabasesPaginator

      This is a variant of listDatabases(software.amazon.awssdk.services.redshiftdata.model.ListDatabasesRequest) operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will internally handle making service calls for you.

      When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response pages by making service calls until there are no pages left or your iteration stops. If there are errors in your request, you will see the failures only after you start iterating through the iterable.

      The following are few ways to iterate through the response pages:

      1) Using a Stream
       
       software.amazon.awssdk.services.redshiftdata.paginators.ListDatabasesIterable responses = client.listDatabasesPaginator(request);
       responses.stream().forEach(....);
       
       
      2) Using For loop
       {
           @code
           software.amazon.awssdk.services.redshiftdata.paginators.ListDatabasesIterable responses = client
                   .listDatabasesPaginator(request);
           for (software.amazon.awssdk.services.redshiftdata.model.ListDatabasesResponse response : responses) {
               // do something;
           }
       }
       
      3) Use iterator directly
       
       software.amazon.awssdk.services.redshiftdata.paginators.ListDatabasesIterable responses = client.listDatabasesPaginator(request);
       responses.iterator().forEachRemaining(....);
       
       

      Please notice that the configuration of MaxResults won't limit the number of results you get with the paginator. It only limits the number of results in each page.

      Note: If you prefer to have control on service calls, use the listDatabases(software.amazon.awssdk.services.redshiftdata.model.ListDatabasesRequest) operation.

      Parameters:
      listDatabasesRequest -
      Returns:
      A custom iterable that can be used to iterate through all the response pages.
      See Also:
    • listDatabasesPaginator

      This is a variant of listDatabases(software.amazon.awssdk.services.redshiftdata.model.ListDatabasesRequest) operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will internally handle making service calls for you.

      When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response pages by making service calls until there are no pages left or your iteration stops. If there are errors in your request, you will see the failures only after you start iterating through the iterable.

      The following are few ways to iterate through the response pages:

      1) Using a Stream
       
       software.amazon.awssdk.services.redshiftdata.paginators.ListDatabasesIterable responses = client.listDatabasesPaginator(request);
       responses.stream().forEach(....);
       
       
      2) Using For loop
       {
           @code
           software.amazon.awssdk.services.redshiftdata.paginators.ListDatabasesIterable responses = client
                   .listDatabasesPaginator(request);
           for (software.amazon.awssdk.services.redshiftdata.model.ListDatabasesResponse response : responses) {
               // do something;
           }
       }
       
      3) Use iterator directly
       
       software.amazon.awssdk.services.redshiftdata.paginators.ListDatabasesIterable responses = client.listDatabasesPaginator(request);
       responses.iterator().forEachRemaining(....);
       
       

      Please notice that the configuration of MaxResults won't limit the number of results you get with the paginator. It only limits the number of results in each page.

      Note: If you prefer to have control on service calls, use the listDatabases(software.amazon.awssdk.services.redshiftdata.model.ListDatabasesRequest) operation.


      This is a convenience which creates an instance of the ListDatabasesRequest.Builder avoiding the need to create one manually via ListDatabasesRequest.builder()

      Parameters:
      listDatabasesRequest - A Consumer that will call methods on ListDatabasesRequest.Builder to create a request.
      Returns:
      A custom iterable that can be used to iterate through all the response pages.
      See Also:
    • listSchemas

      Lists the schemas in a database. A token is returned to page through the schema list. Depending on the authorization method, use one of the following combinations of request parameters:

      • Secrets Manager - when connecting to a cluster, provide the secret-arn of a secret stored in Secrets Manager which has username and password. The specified secret contains credentials to connect to the database you specify. When you are connecting to a cluster, you also supply the database name, If you provide a cluster identifier (dbClusterIdentifier), it must match the cluster identifier stored in the secret. When you are connecting to a serverless workgroup, you also supply the database name.

      • Temporary credentials - when connecting to your data warehouse, choose one of the following options:

        • When connecting to a serverless workgroup, specify the workgroup name and database name. The database user name is derived from the IAM identity. For example, arn:iam::123456789012:user:foo has the database user name IAM:foo. Also, permission to call the redshift-serverless:GetCredentials operation is required.

        • When connecting to a cluster as an IAM identity, specify the cluster identifier and the database name. The database user name is derived from the IAM identity. For example, arn:iam::123456789012:user:foo has the database user name IAM:foo. Also, permission to call the redshift:GetClusterCredentialsWithIAM operation is required.

        • When connecting to a cluster as a database user, specify the cluster identifier, the database name, and the database user name. Also, permission to call the redshift:GetClusterCredentials operation is required.

      For more information about the Amazon Redshift Data API and CLI usage examples, see Using the Amazon Redshift Data API in the Amazon Redshift Management Guide.

      Parameters:
      listSchemasRequest -
      Returns:
      Result of the ListSchemas operation returned by the service.
      See Also:
    • listSchemas

      Lists the schemas in a database. A token is returned to page through the schema list. Depending on the authorization method, use one of the following combinations of request parameters:

      • Secrets Manager - when connecting to a cluster, provide the secret-arn of a secret stored in Secrets Manager which has username and password. The specified secret contains credentials to connect to the database you specify. When you are connecting to a cluster, you also supply the database name, If you provide a cluster identifier (dbClusterIdentifier), it must match the cluster identifier stored in the secret. When you are connecting to a serverless workgroup, you also supply the database name.

      • Temporary credentials - when connecting to your data warehouse, choose one of the following options:

        • When connecting to a serverless workgroup, specify the workgroup name and database name. The database user name is derived from the IAM identity. For example, arn:iam::123456789012:user:foo has the database user name IAM:foo. Also, permission to call the redshift-serverless:GetCredentials operation is required.

        • When connecting to a cluster as an IAM identity, specify the cluster identifier and the database name. The database user name is derived from the IAM identity. For example, arn:iam::123456789012:user:foo has the database user name IAM:foo. Also, permission to call the redshift:GetClusterCredentialsWithIAM operation is required.

        • When connecting to a cluster as a database user, specify the cluster identifier, the database name, and the database user name. Also, permission to call the redshift:GetClusterCredentials operation is required.

      For more information about the Amazon Redshift Data API and CLI usage examples, see Using the Amazon Redshift Data API in the Amazon Redshift Management Guide.


      This is a convenience which creates an instance of the ListSchemasRequest.Builder avoiding the need to create one manually via ListSchemasRequest.builder()

      Parameters:
      listSchemasRequest - A Consumer that will call methods on ListSchemasRequest.Builder to create a request.
      Returns:
      Result of the ListSchemas operation returned by the service.
      See Also:
    • listSchemasPaginator

      This is a variant of listSchemas(software.amazon.awssdk.services.redshiftdata.model.ListSchemasRequest) operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will internally handle making service calls for you.

      When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response pages by making service calls until there are no pages left or your iteration stops. If there are errors in your request, you will see the failures only after you start iterating through the iterable.

      The following are few ways to iterate through the response pages:

      1) Using a Stream
       
       software.amazon.awssdk.services.redshiftdata.paginators.ListSchemasIterable responses = client.listSchemasPaginator(request);
       responses.stream().forEach(....);
       
       
      2) Using For loop
       {
           @code
           software.amazon.awssdk.services.redshiftdata.paginators.ListSchemasIterable responses = client.listSchemasPaginator(request);
           for (software.amazon.awssdk.services.redshiftdata.model.ListSchemasResponse response : responses) {
               // do something;
           }
       }
       
      3) Use iterator directly
       
       software.amazon.awssdk.services.redshiftdata.paginators.ListSchemasIterable responses = client.listSchemasPaginator(request);
       responses.iterator().forEachRemaining(....);
       
       

      Please notice that the configuration of MaxResults won't limit the number of results you get with the paginator. It only limits the number of results in each page.

      Note: If you prefer to have control on service calls, use the listSchemas(software.amazon.awssdk.services.redshiftdata.model.ListSchemasRequest) operation.

      Parameters:
      listSchemasRequest -
      Returns:
      A custom iterable that can be used to iterate through all the response pages.
      See Also:
    • listSchemasPaginator

      This is a variant of listSchemas(software.amazon.awssdk.services.redshiftdata.model.ListSchemasRequest) operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will internally handle making service calls for you.

      When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response pages by making service calls until there are no pages left or your iteration stops. If there are errors in your request, you will see the failures only after you start iterating through the iterable.

      The following are few ways to iterate through the response pages:

      1) Using a Stream
       
       software.amazon.awssdk.services.redshiftdata.paginators.ListSchemasIterable responses = client.listSchemasPaginator(request);
       responses.stream().forEach(....);
       
       
      2) Using For loop
       {
           @code
           software.amazon.awssdk.services.redshiftdata.paginators.ListSchemasIterable responses = client.listSchemasPaginator(request);
           for (software.amazon.awssdk.services.redshiftdata.model.ListSchemasResponse response : responses) {
               // do something;
           }
       }
       
      3) Use iterator directly
       
       software.amazon.awssdk.services.redshiftdata.paginators.ListSchemasIterable responses = client.listSchemasPaginator(request);
       responses.iterator().forEachRemaining(....);
       
       

      Please notice that the configuration of MaxResults won't limit the number of results you get with the paginator. It only limits the number of results in each page.

      Note: If you prefer to have control on service calls, use the listSchemas(software.amazon.awssdk.services.redshiftdata.model.ListSchemasRequest) operation.


      This is a convenience which creates an instance of the ListSchemasRequest.Builder avoiding the need to create one manually via ListSchemasRequest.builder()

      Parameters:
      listSchemasRequest - A Consumer that will call methods on ListSchemasRequest.Builder to create a request.
      Returns:
      A custom iterable that can be used to iterate through all the response pages.
      See Also:
    • listStatements

      List of SQL statements. By default, only finished statements are shown. A token is returned to page through the statement list.

      For more information about the Amazon Redshift Data API and CLI usage examples, see Using the Amazon Redshift Data API in the Amazon Redshift Management Guide.

      Parameters:
      listStatementsRequest -
      Returns:
      Result of the ListStatements operation returned by the service.
      See Also:
    • listStatements

      List of SQL statements. By default, only finished statements are shown. A token is returned to page through the statement list.

      For more information about the Amazon Redshift Data API and CLI usage examples, see Using the Amazon Redshift Data API in the Amazon Redshift Management Guide.


      This is a convenience which creates an instance of the ListStatementsRequest.Builder avoiding the need to create one manually via ListStatementsRequest.builder()

      Parameters:
      listStatementsRequest - A Consumer that will call methods on ListStatementsRequest.Builder to create a request.
      Returns:
      Result of the ListStatements operation returned by the service.
      See Also:
    • listStatementsPaginator

      This is a variant of listStatements(software.amazon.awssdk.services.redshiftdata.model.ListStatementsRequest) operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will internally handle making service calls for you.

      When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response pages by making service calls until there are no pages left or your iteration stops. If there are errors in your request, you will see the failures only after you start iterating through the iterable.

      The following are few ways to iterate through the response pages:

      1) Using a Stream
       
       software.amazon.awssdk.services.redshiftdata.paginators.ListStatementsIterable responses = client.listStatementsPaginator(request);
       responses.stream().forEach(....);
       
       
      2) Using For loop
       {
           @code
           software.amazon.awssdk.services.redshiftdata.paginators.ListStatementsIterable responses = client
                   .listStatementsPaginator(request);
           for (software.amazon.awssdk.services.redshiftdata.model.ListStatementsResponse response : responses) {
               // do something;
           }
       }
       
      3) Use iterator directly
       
       software.amazon.awssdk.services.redshiftdata.paginators.ListStatementsIterable responses = client.listStatementsPaginator(request);
       responses.iterator().forEachRemaining(....);
       
       

      Please notice that the configuration of MaxResults won't limit the number of results you get with the paginator. It only limits the number of results in each page.

      Note: If you prefer to have control on service calls, use the listStatements(software.amazon.awssdk.services.redshiftdata.model.ListStatementsRequest) operation.

      Parameters:
      listStatementsRequest -
      Returns:
      A custom iterable that can be used to iterate through all the response pages.
      See Also:
    • listStatementsPaginator

      This is a variant of listStatements(software.amazon.awssdk.services.redshiftdata.model.ListStatementsRequest) operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will internally handle making service calls for you.

      When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response pages by making service calls until there are no pages left or your iteration stops. If there are errors in your request, you will see the failures only after you start iterating through the iterable.

      The following are few ways to iterate through the response pages:

      1) Using a Stream
       
       software.amazon.awssdk.services.redshiftdata.paginators.ListStatementsIterable responses = client.listStatementsPaginator(request);
       responses.stream().forEach(....);
       
       
      2) Using For loop
       {
           @code
           software.amazon.awssdk.services.redshiftdata.paginators.ListStatementsIterable responses = client
                   .listStatementsPaginator(request);
           for (software.amazon.awssdk.services.redshiftdata.model.ListStatementsResponse response : responses) {
               // do something;
           }
       }
       
      3) Use iterator directly
       
       software.amazon.awssdk.services.redshiftdata.paginators.ListStatementsIterable responses = client.listStatementsPaginator(request);
       responses.iterator().forEachRemaining(....);
       
       

      Please notice that the configuration of MaxResults won't limit the number of results you get with the paginator. It only limits the number of results in each page.

      Note: If you prefer to have control on service calls, use the listStatements(software.amazon.awssdk.services.redshiftdata.model.ListStatementsRequest) operation.


      This is a convenience which creates an instance of the ListStatementsRequest.Builder avoiding the need to create one manually via ListStatementsRequest.builder()

      Parameters:
      listStatementsRequest - A Consumer that will call methods on ListStatementsRequest.Builder to create a request.
      Returns:
      A custom iterable that can be used to iterate through all the response pages.
      See Also:
    • listTables

      List the tables in a database. If neither SchemaPattern nor TablePattern are specified, then all tables in the database are returned. A token is returned to page through the table list. Depending on the authorization method, use one of the following combinations of request parameters:

      • Secrets Manager - when connecting to a cluster, provide the secret-arn of a secret stored in Secrets Manager which has username and password. The specified secret contains credentials to connect to the database you specify. When you are connecting to a cluster, you also supply the database name, If you provide a cluster identifier (dbClusterIdentifier), it must match the cluster identifier stored in the secret. When you are connecting to a serverless workgroup, you also supply the database name.

      • Temporary credentials - when connecting to your data warehouse, choose one of the following options:

        • When connecting to a serverless workgroup, specify the workgroup name and database name. The database user name is derived from the IAM identity. For example, arn:iam::123456789012:user:foo has the database user name IAM:foo. Also, permission to call the redshift-serverless:GetCredentials operation is required.

        • When connecting to a cluster as an IAM identity, specify the cluster identifier and the database name. The database user name is derived from the IAM identity. For example, arn:iam::123456789012:user:foo has the database user name IAM:foo. Also, permission to call the redshift:GetClusterCredentialsWithIAM operation is required.

        • When connecting to a cluster as a database user, specify the cluster identifier, the database name, and the database user name. Also, permission to call the redshift:GetClusterCredentials operation is required.

      For more information about the Amazon Redshift Data API and CLI usage examples, see Using the Amazon Redshift Data API in the Amazon Redshift Management Guide.

      Parameters:
      listTablesRequest -
      Returns:
      Result of the ListTables operation returned by the service.
      See Also:
    • listTables

      List the tables in a database. If neither SchemaPattern nor TablePattern are specified, then all tables in the database are returned. A token is returned to page through the table list. Depending on the authorization method, use one of the following combinations of request parameters:

      • Secrets Manager - when connecting to a cluster, provide the secret-arn of a secret stored in Secrets Manager which has username and password. The specified secret contains credentials to connect to the database you specify. When you are connecting to a cluster, you also supply the database name, If you provide a cluster identifier (dbClusterIdentifier), it must match the cluster identifier stored in the secret. When you are connecting to a serverless workgroup, you also supply the database name.

      • Temporary credentials - when connecting to your data warehouse, choose one of the following options:

        • When connecting to a serverless workgroup, specify the workgroup name and database name. The database user name is derived from the IAM identity. For example, arn:iam::123456789012:user:foo has the database user name IAM:foo. Also, permission to call the redshift-serverless:GetCredentials operation is required.

        • When connecting to a cluster as an IAM identity, specify the cluster identifier and the database name. The database user name is derived from the IAM identity. For example, arn:iam::123456789012:user:foo has the database user name IAM:foo. Also, permission to call the redshift:GetClusterCredentialsWithIAM operation is required.

        • When connecting to a cluster as a database user, specify the cluster identifier, the database name, and the database user name. Also, permission to call the redshift:GetClusterCredentials operation is required.

      For more information about the Amazon Redshift Data API and CLI usage examples, see Using the Amazon Redshift Data API in the Amazon Redshift Management Guide.


      This is a convenience which creates an instance of the ListTablesRequest.Builder avoiding the need to create one manually via ListTablesRequest.builder()

      Parameters:
      listTablesRequest - A Consumer that will call methods on ListTablesRequest.Builder to create a request.
      Returns:
      Result of the ListTables operation returned by the service.
      See Also:
    • listTablesPaginator

      This is a variant of listTables(software.amazon.awssdk.services.redshiftdata.model.ListTablesRequest) operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will internally handle making service calls for you.

      When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response pages by making service calls until there are no pages left or your iteration stops. If there are errors in your request, you will see the failures only after you start iterating through the iterable.

      The following are few ways to iterate through the response pages:

      1) Using a Stream
       
       software.amazon.awssdk.services.redshiftdata.paginators.ListTablesIterable responses = client.listTablesPaginator(request);
       responses.stream().forEach(....);
       
       
      2) Using For loop
       {
           @code
           software.amazon.awssdk.services.redshiftdata.paginators.ListTablesIterable responses = client.listTablesPaginator(request);
           for (software.amazon.awssdk.services.redshiftdata.model.ListTablesResponse response : responses) {
               // do something;
           }
       }
       
      3) Use iterator directly
       
       software.amazon.awssdk.services.redshiftdata.paginators.ListTablesIterable responses = client.listTablesPaginator(request);
       responses.iterator().forEachRemaining(....);
       
       

      Please notice that the configuration of MaxResults won't limit the number of results you get with the paginator. It only limits the number of results in each page.

      Note: If you prefer to have control on service calls, use the listTables(software.amazon.awssdk.services.redshiftdata.model.ListTablesRequest) operation.

      Parameters:
      listTablesRequest -
      Returns:
      A custom iterable that can be used to iterate through all the response pages.
      See Also:
    • listTablesPaginator

      This is a variant of listTables(software.amazon.awssdk.services.redshiftdata.model.ListTablesRequest) operation. The return type is a custom iterable that can be used to iterate through all the pages. SDK will internally handle making service calls for you.

      When this operation is called, a custom iterable is returned but no service calls are made yet. So there is no guarantee that the request is valid. As you iterate through the iterable, SDK will start lazily loading response pages by making service calls until there are no pages left or your iteration stops. If there are errors in your request, you will see the failures only after you start iterating through the iterable.

      The following are few ways to iterate through the response pages:

      1) Using a Stream
       
       software.amazon.awssdk.services.redshiftdata.paginators.ListTablesIterable responses = client.listTablesPaginator(request);
       responses.stream().forEach(....);
       
       
      2) Using For loop
       {
           @code
           software.amazon.awssdk.services.redshiftdata.paginators.ListTablesIterable responses = client.listTablesPaginator(request);
           for (software.amazon.awssdk.services.redshiftdata.model.ListTablesResponse response : responses) {
               // do something;
           }
       }
       
      3) Use iterator directly
       
       software.amazon.awssdk.services.redshiftdata.paginators.ListTablesIterable responses = client.listTablesPaginator(request);
       responses.iterator().forEachRemaining(....);
       
       

      Please notice that the configuration of MaxResults won't limit the number of results you get with the paginator. It only limits the number of results in each page.

      Note: If you prefer to have control on service calls, use the listTables(software.amazon.awssdk.services.redshiftdata.model.ListTablesRequest) operation.


      This is a convenience which creates an instance of the ListTablesRequest.Builder avoiding the need to create one manually via ListTablesRequest.builder()

      Parameters:
      listTablesRequest - A Consumer that will call methods on ListTablesRequest.Builder to create a request.
      Returns:
      A custom iterable that can be used to iterate through all the response pages.
      See Also:
    • create

      static RedshiftDataClient create()
      Create a RedshiftDataClient with the region loaded from the DefaultAwsRegionProviderChain and credentials loaded from the DefaultCredentialsProvider.
    • builder

      static RedshiftDataClientBuilder builder()
      Create a builder that can be used to configure and create a RedshiftDataClient.
    • serviceMetadata

      static ServiceMetadata serviceMetadata()
    • serviceClientConfiguration

      default RedshiftDataServiceClientConfiguration serviceClientConfiguration()
      Description copied from interface: SdkClient
      The SDK service client configuration exposes client settings to the user, e.g., ClientOverrideConfiguration
      Specified by:
      serviceClientConfiguration in interface AwsClient
      Specified by:
      serviceClientConfiguration in interface SdkClient
      Returns:
      SdkServiceClientConfiguration