Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

This is the documentation for an old version of Boost. Click here to view this page for the latest version.
PrevUpHomeNext
connection::async_start_statement_execution (4 of 4 overloads)

Starts a statement execution as a multi-function operation.

Synopsis
template<
    class FieldViewFwdIterator,
    class CompletionToken>
auto
async_start_statement_execution(
    const statement& stmt,
    FieldViewFwdIterator params_first,
    FieldViewFwdIterator params_last,
    execution_state& st,
    diagnostics& diag,
    CompletionToken&& token);
Description

Writes the execute request and reads the initial server response and the column metadata, but not the generated rows, if any. After this operation completes, st will have execution_state::meta populated, and may become execution_state::complete if the operation did not generate any rows (e.g. it was an UPDATE).

If the operation generated any rows, these must be read (by using connection::read_some_rows) before engaging in any further operation involving server communication. Otherwise, the results are undefined.

The statement actual parameters are passed as an iterator range. String parameters should be encoded using the connection's character set.

Preconditions

stmt.valid() == true

Object lifetimes

If CompletionToken is deferred (like use_awaitable), the caller must keep objects in the iterator range alive until the operation is initiated.

Handler signature

The handler signature for this operation is void(boost::mysql::error_code).


PrevUpHomeNext