Poco::Data::SQLite

class SQLiteStatementImpl

Library: SQLite
Package: SQLite
Header: Poco/Data/SQLite/SQLiteStatementImpl.h

Description

Implements statement functionality needed for SQLite

Inheritance

Direct Base Classes: Poco::Data::StatementImpl

All Base Classes: Poco::Data::StatementImpl

Member Summary

Member Functions: affectedRowCount, bindImpl, binder, canBind, canCompile, columnsReturned, compileImpl, extractor, hasNext, metaColumn, next

Inherited Functions: activateNextDataSet, activatePreviousDataSet, add, addBind, addExtract, affectedRowCount, bindImpl, binder, bindings, canBind, canCompile, columnsExtracted, columnsReturned, compileImpl, currentDataSet, dataSetCount, execute, extractionCount, extractionLimit, extractions, extractor, fixupBinding, fixupExtraction, getExtractionLimit, getState, getStorage, hasMoreDataSets, hasNext, isStoredProcedure, makeExtractors, metaColumn, next, removeBind, reset, resetBinding, rowsExtracted, session, setExtractionLimit, setStorage, subTotalRowCount, toString

Constructors

SQLiteStatementImpl

SQLiteStatementImpl(
    Poco::Data::SessionImpl & rSession,
    sqlite3 * pDB
);

Creates the SQLiteStatementImpl.

Destructor

~SQLiteStatementImpl virtual

~SQLiteStatementImpl();

Destroys the SQLiteStatementImpl.

Member Functions

affectedRowCount protected virtual

std::size_t affectedRowCount() const;

Returns the number of affected rows. Used to find out the number of rows affected by insert, delete or update. All changes are counted, even if they are later undone by a ROLLBACK or ABORT. Changes associated with creating and dropping tables are not counted.

See also: Poco::Data::StatementImpl::affectedRowCount()

bindImpl protected virtual

void bindImpl();

Binds parameters

See also: Poco::Data::StatementImpl::bindImpl()

binder protected virtual inline

AbstractBinding::BinderPtr binder();

Returns the concrete binder used by the statement.

See also: Poco::Data::StatementImpl::binder()

canBind protected virtual inline

bool canBind() const;

Returns true if a valid statement is set and we can bind.

See also: Poco::Data::StatementImpl::canBind()

canCompile protected virtual inline

bool canCompile() const;

Returns true if statement can compile.

See also: Poco::Data::StatementImpl::canCompile()

columnsReturned protected virtual

std::size_t columnsReturned() const;

Returns number of columns returned by query.

See also: Poco::Data::StatementImpl::columnsReturned()

compileImpl protected virtual

void compileImpl();

Compiles the statement, doesn't bind yet. Returns true if the statement was succesfully compiled. The way SQLite handles batches of statmeents is by compiling one at a time and returning a pointer to the next one. The remainder of the statement is kept in a string buffer pointed to by _pLeftover member.

See also: Poco::Data::StatementImpl::compileImpl()

extractor protected virtual inline

AbstractExtraction::ExtractorPtr extractor();

Returns the concrete extractor used by the statement.

See also: Poco::Data::StatementImpl::extractor()

hasNext protected virtual

bool hasNext();

Returns true if a call to next() will return data.

See also: Poco::Data::StatementImpl::hasNext()

metaColumn protected virtual

const MetaColumn & metaColumn(
    std::size_t pos
) const;

Returns column meta data.

See also: Poco::Data::StatementImpl::metaColumn()

next protected virtual

std::size_t next();

Retrieves the next row from the resultset and returns 1. Will throw, if the resultset is empty.

See also: Poco::Data::StatementImpl::next()