DbDataProvider::AbstractDbRecordIterator Class Reference

Defines the record iterator class for Table-based iterators. More...

Inheritance diagram for DbDataProvider::AbstractDbRecordIterator:
[legend]

## Public Member Functions

| constructor (bool release_transaction, AbstractSQLStatement stmt)
| creates the iterator More...
| destructor ()
| rolls back the transaction if a transaction lock was acquired in the constructor and keepTransactionLock() was not called
*hash< string, AbstractDataField > | getRecordType ()
| Returns the record description, if available. More...
hash< auto > | getValue ()
| Returns a single record if the iterator is valid. More...
| keepTransactionLock ()
| Ensures that no rollback is performed when the object is destroyed.
bool | next ()
| Increments the row pointer when retrieving rows from a select statement; returns True if there is a row to retrieve, False if not. More...
bool | valid ()
| Returns True if the iterator is valid. More...

## Protected Attributes

bool | release_transaction
| release the transaction with a rollback in the destructor?
AbstractSQLStatement | stmt
| the statement being iterated

## Detailed Description

Defines the record iterator class for Table-based iterators.

## Member Function Documentation

## constructor()

DbDataProvider::AbstractDbRecordIterator::constructor | ( | bool | release_transaction,
|  | AbstractSQLStatement | stmt
| ) |  |

creates the iterator

Parameters

  release_transaction | release the transaction with a rollback in the destructor?
  stmt | the SQL statement to iterate

## getRecordType()

*hash<string, AbstractDataField> DbDataProvider::AbstractDbRecordIterator::getRecordType | ( |  | ) |

Returns the record description, if available.

Returns
  the record type of the query results

## getValue()

hash<auto> DbDataProvider::AbstractDbRecordIterator::getValue | ( |  | ) |

Returns a single record if the iterator is valid.

Exceptions

  INVALID-ITERATOR | the iterator is not pointing at a valid element

## next()

bool DbDataProvider::AbstractDbRecordIterator::next | ( |  | ) |

Increments the row pointer when retrieving rows from a select statement; returns True if there is a row to retrieve, False if not.

Returns
  True if there is a row to retrieve, False if not (no more rows to be retrieved)

Note
  Exceptions could be thrown by the DBI driver when the statement is executed; see the relevant DBI driver docs for more information

## valid()

bool DbDataProvider::AbstractDbRecordIterator::valid | ( |  | ) |

Returns True if the iterator is valid.

Returns
  True if the iterator is valid