// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
/// Constructs a fluent builder for the [`ExecuteStatement`](crate::operation::execute_statement::builders::ExecuteStatementFluentBuilder) operation.
///
/// - The fluent builder is configurable:
/// - [`statement(impl Into<String>)`](crate::operation::execute_statement::builders::ExecuteStatementFluentBuilder::statement) / [`set_statement(Option<String>)`](crate::operation::execute_statement::builders::ExecuteStatementFluentBuilder::set_statement):<br>required: **true**<br><p>The PartiQL statement representing the operation to run.</p><br>
/// - [`parameters(AttributeValue)`](crate::operation::execute_statement::builders::ExecuteStatementFluentBuilder::parameters) / [`set_parameters(Option<Vec::<AttributeValue>>)`](crate::operation::execute_statement::builders::ExecuteStatementFluentBuilder::set_parameters):<br>required: **false**<br><p>The parameters for the PartiQL statement, if any.</p><br>
/// - [`consistent_read(bool)`](crate::operation::execute_statement::builders::ExecuteStatementFluentBuilder::consistent_read) / [`set_consistent_read(Option<bool>)`](crate::operation::execute_statement::builders::ExecuteStatementFluentBuilder::set_consistent_read):<br>required: **false**<br><p>The consistency of a read operation. If set to <code>true</code>, then a strongly consistent read is used; otherwise, an eventually consistent read is used.</p><br>
/// - [`next_token(impl Into<String>)`](crate::operation::execute_statement::builders::ExecuteStatementFluentBuilder::next_token) / [`set_next_token(Option<String>)`](crate::operation::execute_statement::builders::ExecuteStatementFluentBuilder::set_next_token):<br>required: **false**<br><p>Set this value to get remaining results, if <code>NextToken</code> was returned in the statement response.</p><br>
/// - [`return_consumed_capacity(ReturnConsumedCapacity)`](crate::operation::execute_statement::builders::ExecuteStatementFluentBuilder::return_consumed_capacity) / [`set_return_consumed_capacity(Option<ReturnConsumedCapacity>)`](crate::operation::execute_statement::builders::ExecuteStatementFluentBuilder::set_return_consumed_capacity):<br>required: **false**<br><p>Determines the level of detail about either provisioned or on-demand throughput consumption that is returned in the response:</p> <ul> <li> <p><code>INDEXES</code> - The response includes the aggregate <code>ConsumedCapacity</code> for the operation, together with <code>ConsumedCapacity</code> for each table and secondary index that was accessed.</p> <p>Note that some operations, such as <code>GetItem</code> and <code>BatchGetItem</code>, do not access any indexes at all. In these cases, specifying <code>INDEXES</code> will only return <code>ConsumedCapacity</code> information for table(s).</p></li> <li> <p><code>TOTAL</code> - The response includes only the aggregate <code>ConsumedCapacity</code> for the operation.</p></li> <li> <p><code>NONE</code> - No <code>ConsumedCapacity</code> details are included in the response.</p></li> </ul><br>
/// - [`limit(i32)`](crate::operation::execute_statement::builders::ExecuteStatementFluentBuilder::limit) / [`set_limit(Option<i32>)`](crate::operation::execute_statement::builders::ExecuteStatementFluentBuilder::set_limit):<br>required: **false**<br><p>The maximum number of items to evaluate (not necessarily the number of matching items). If DynamoDB processes the number of items up to the limit while processing the results, it stops the operation and returns the matching values up to that point, along with a key in <code>LastEvaluatedKey</code> to apply in a subsequent operation so you can pick up where you left off. Also, if the processed dataset size exceeds 1 MB before DynamoDB reaches this limit, it stops the operation and returns the matching values up to the limit, and a key in <code>LastEvaluatedKey</code> to apply in a subsequent operation to continue the operation.</p><br>
/// - [`return_values_on_condition_check_failure(ReturnValuesOnConditionCheckFailure)`](crate::operation::execute_statement::builders::ExecuteStatementFluentBuilder::return_values_on_condition_check_failure) / [`set_return_values_on_condition_check_failure(Option<ReturnValuesOnConditionCheckFailure>)`](crate::operation::execute_statement::builders::ExecuteStatementFluentBuilder::set_return_values_on_condition_check_failure):<br>required: **false**<br><p>An optional parameter that returns the item attributes for an <code>ExecuteStatement</code> operation that failed a condition check.</p> <p>There is no additional cost associated with requesting a return value aside from the small network and processing overhead of receiving a larger response. No read capacity units are consumed.</p><br>
/// - On success, responds with [`ExecuteStatementOutput`](crate::operation::execute_statement::ExecuteStatementOutput) with field(s):
/// - [`items(Option<Vec::<HashMap::<String, AttributeValue>>>)`](crate::operation::execute_statement::ExecuteStatementOutput::items): <p>If a read operation was used, this property will contain the result of the read operation; a map of attribute names and their values. For the write operations this value will be empty.</p>
/// - [`next_token(Option<String>)`](crate::operation::execute_statement::ExecuteStatementOutput::next_token): <p>If the response of a read request exceeds the response payload limit DynamoDB will set this value in the response. If set, you can use that this value in the subsequent request to get the remaining results.</p>
/// - [`consumed_capacity(Option<ConsumedCapacity>)`](crate::operation::execute_statement::ExecuteStatementOutput::consumed_capacity): <p>The capacity units consumed by an operation. The data returned includes the total provisioned throughput consumed, along with statistics for the table and any indexes involved in the operation. <code>ConsumedCapacity</code> is only returned if the request asked for it. For more information, see <a href="https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/provisioned-capacity-mode.html">Provisioned capacity mode</a> in the <i>Amazon DynamoDB Developer Guide</i>.</p>
/// - [`last_evaluated_key(Option<HashMap::<String, AttributeValue>>)`](crate::operation::execute_statement::ExecuteStatementOutput::last_evaluated_key): <p>The primary key of the item where the operation stopped, inclusive of the previous result set. Use this value to start a new operation, excluding this value in the new request. If <code>LastEvaluatedKey</code> is empty, then the "last page" of results has been processed and there is no more data to be retrieved. If <code>LastEvaluatedKey</code> is not empty, it does not necessarily mean that there is more data in the result set. The only way to know when you have reached the end of the result set is when <code>LastEvaluatedKey</code> is empty.</p>
/// - On failure, responds with [`SdkError<ExecuteStatementError>`](crate::operation::execute_statement::ExecuteStatementError)
pub fn execute_statement(&self) -> crate::operation::execute_statement::builders::ExecuteStatementFluentBuilder {
crate::operation::execute_statement::builders::ExecuteStatementFluentBuilder::new(self.handle.clone())
}
}