MySQL++: mysqlpp::UseQueryResult Class Reference
mysqlpp::UseQueryResult Class Reference

StoreQueryResult set type for "use" queries. More...

`#include <result.h>`

Inheritance diagram for mysqlpp::UseQueryResult:
[legend]
Collaboration diagram for mysqlpp::UseQueryResult:
[legend]

## Public Member Functions

| UseQueryResult ()
| Default constructor.
| UseQueryResult (MYSQL_RES *result, DBDriver *dbd, bool te=true)
| Create the object, fully initialized.
| UseQueryResult (const UseQueryResult &other)
| Create a copy of another UseQueryResult object.
| ~UseQueryResult ()
| Destroy object.
UseQueryResult & | operator= (const UseQueryResult &rhs)
| Copy another UseQueryResult object's data into this object.
const Field & | fetch_field () const
| Returns the next field in this result set.
const Field & | fetch_field (Fields::size_type i) const
| Returns the given field in this result set.
const unsigned long * | fetch_lengths () const
| Returns the lengths of the fields in the current row of the result set.
Row | fetch_row () const
| Returns the next row in a "use" query's result set. More...
MYSQL_ROW | fetch_raw_row () const
| Wraps mysql_fetch_row() in MySQL C API.
void | field_seek (Fields::size_type field) const
| Jumps to the given field within the result set. More...
| operator MYSQL_RES * () const
| Return the pointer to the underlying MySQL C API result set object. More...
Public Member Functions inherited from mysqlpp::ResultBase
virtual | ~ResultBase ()
| Destroy object.
const Field & | fetch_field () const
| Returns the next field in this result set.
const Field & | fetch_field (Fields::size_type i) const
| Returns the given field in this result set.
const Field & | field (unsigned int i) const
| Get the underlying Field structure given its index.
const Fields & | fields () const
| Get the underlying Fields structure.
const std::string & | field_name (int i) const
| Get the name of the field at the given index.
const RefCountedPointer< FieldNames > & | field_names () const
| Get the names of the fields within this result set.
int | field_num (const std::string &) const
| Get the index of the named field. More...
const FieldTypes::value_type & | field_type (int i) const
| Get the type of a particular field within this result set.
const RefCountedPointer< FieldTypes > & | field_types () const
| Get a list of the types of the fields within this result set.
size_t | num_fields () const
| Returns the number of fields in this result set.
const char * | table () const
| Return the name of the table the result set comes from.
Public Member Functions inherited from mysqlpp::OptionalExceptions
| OptionalExceptions (bool e=true)
| Default constructor. More...
virtual | ~OptionalExceptions ()
| Destroy object.
void | enable_exceptions () const
| Enable exceptions from the object.
void | disable_exceptions () const
| Disable exceptions from the object.
bool | throw_exceptions () const
| Returns true if exceptions are enabled.

## Additional Inherited Members

Protected Member Functions inherited from mysqlpp::ResultBase
| ResultBase ()
| Create empty object.
| ResultBase (MYSQL_RES *result, DBDriver *dbd, bool te=true)
| Create the object, fully initialized.
| ResultBase (const ResultBase &other)
| Create object as a copy of another ResultBase.
ResultBase & | copy (const ResultBase &other)
| Copy another ResultBase object's contents into this one.
Protected Member Functions inherited from mysqlpp::OptionalExceptions
void | set_exceptions (bool e) const
| Sets the exception state to a particular value. More...
Protected Attributes inherited from mysqlpp::ResultBase
DBDriver * | driver_
| Access to DB driver; fully initted if nonzero.
Fields | fields_
| list of fields in result
RefCountedPointer< FieldNames > | names_
| list of field names in result
RefCountedPointer< FieldTypes > | types_
| list of field types in result
Fields::size_type | current_field_
| Default field index used by fetch_field() More...

## Detailed Description

StoreQueryResult set type for "use" queries.

See the user manual for the reason you might want to use this even though its interface is less friendly than StoreQueryResult's.

## Member Function Documentation

## fetch_row()

Row mysqlpp::UseQueryResult::fetch_row | ( |  | ) | const

Returns the next row in a "use" query's result set.

This is a thick wrapper around DBDriver::fetch_row(). It does a lot of error checking before returning the Row object containing the row data.

See also
  fetch_raw_row()

References mysqlpp::ResultBase::driver_, fetch_lengths(), mysqlpp::DBDriver::fetch_row(), mysqlpp::RefCountedPointer< T, Destroyer >::raw(), and mysqlpp::OptionalExceptions::throw_exceptions().

Referenced by mysqlpp::Query::for_each(), and mysqlpp::Query::store_if().

## field_seek()

void mysqlpp::UseQueryResult::field_seek | ( | Fields::size_type | field | ) | const

inline

Jumps to the given field within the result set.

Calling this allows you to reset the default field index used by fetch_field().

## operator MYSQL_RES *()

mysqlpp::UseQueryResult::operator MYSQL_RES * | ( |  | ) | const

inline

Return the pointer to the underlying MySQL C API result set object.

While this has obvious inherent value for those times you need to dig beneath the MySQL++ interface, it has subtler value. It effectively stands in for operator bool(), operator !(), operator ==(), and operator !=(), because the C++ compiler can implement all of these with a MYSQL_RES*.

Of these uses, the most valuable is using the UseQueryResult object in bool context to determine if the query that created

Query q("....");
if (UseQueryResult res = q.use()) {
// Can use 'res', query succeeded
}
else {
// Query failed, call Query::error() or ::errnum() for why
}

The documentation for this class was generated from the following files:

- result.h
- result.cpp