Poco::Data::SQLite

class SQLiteStatementImpl

Library: Data/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, execDirectImpl, execute, executeDirect, 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

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

bindImpl protected virtual

void bindImpl();

Binds parameters

binder protected virtual inline

AbstractBinding::BinderPtr binder();

Returns the concrete binder used by the statement.

canBind protected virtual inline

bool canBind() const;

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

canCompile protected virtual inline

bool canCompile() const;

Returns true if statement can compile.

columnsReturned protected virtual

std::size_t columnsReturned() const;

Returns number of columns returned by query.

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.

extractor protected virtual inline

AbstractExtraction::ExtractorPtr extractor();

Returns the concrete extractor used by the statement.

hasNext protected virtual

bool hasNext();

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

metaColumn protected virtual

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

Returns column meta data.

next protected virtual

std::size_t next();

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