MySQL Connector/C++ Fetching results


The API for fetching result sets is identical for (simple) statements and prepared statements. If your query returns one result set, use sql::Statement::executeQuery() or sql::PreparedStatement::executeQuery() to run your query. Both methods return sql::ResultSet objects. The preview version does buffer all result sets on the client to support cursors.

// ...
sql::Connection *con;
sql::Statement *stmt;
sql::ResultSet *res;
// ...
stmt = con->createStatement();
// ...
res = stmt->executeQuery('SELECT id, label FROM test ORDER BY id ASC');
while (res->next()) {
 // You can use either numeric offsets...
 cout << 'id = ' << res->getInt(1); // getInt(1) returns the first column
 // ... or column names for accessing results.
 // The latter is recommended.
 cout << ', label = '' << res->getString('label') << ''' << endl;
}
delete res;
delete stmt;
delete con;
Note

Note in the preceding code snippet that column indexing starts from 1.

Note that you have to free sql::Statement, sql::Connection and sql::ResultSet objects explicitly using delete.

The usage of cursors is demonstrated in the examples contained in the download package.

Retornar