Qore DbDataProvider Module Reference  1.0
DbDataProvider::AbstractDbRecordIterator Class Reference

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

Inheritance diagram for DbDataProvider::AbstractDbRecordIterator:

Public Member Methods

 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...
 

Private 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_transactionrelease the transaction with a rollback in the destructor?
stmtthe 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-ITERATORthe 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