Sese Framework  2.3.0
A cross-platform framework
Loading...
Searching...
No Matches
sese::db::impl::SqliteStmtResultSetImpl Class Referencefinal

SQLite prepared statement result set. More...

#include <SqliteStmtResultSetImpl.h>

Inheritance diagram for sese::db::impl::SqliteStmtResultSetImpl:
sese::db::ResultSet

Public Member Functions

 SqliteStmtResultSetImpl (sqlite3_stmt *stmt) noexcept
 
void reset () noexcept override
 Locate the first query record.
 
bool next () noexcept override
 Move to the next record.
 
bool isNull (size_t index) const noexcept override
 Determine if the returned result is null.
 
size_t getColumns () const noexcept override
 Get the number of columns in the record.
 
int32_t getInteger (size_t index) const noexcept override
 Get an integer value from the current record.
 
int64_t getLong (size_t index) const noexcept override
 Get a long integer value from the current record.
 
std::string_view getString (size_t index) const noexcept override
 Get a string from the current record.
 
double getDouble (size_t index) const noexcept override
 Get a double-precision floating-point value from the current record.
 
float getFloat (size_t index) const noexcept override
 Get a single-precision floating-point value from the current record.
 
std::optional< sese::DateTimegetDateTime (size_t index) const noexcept override
 Get a time data structure from the current record.
 
- Public Member Functions inherited from sese::db::ResultSet
virtual ~ResultSet () noexcept=default
 

Protected Attributes

sqlite3_stmt * stmt
 

Additional Inherited Members

- Public Types inherited from sese::db::ResultSet
using Ptr = std::unique_ptr<ResultSet>
 

Detailed Description

SQLite prepared statement result set.

Constructor & Destructor Documentation

◆ SqliteStmtResultSetImpl()

impl::SqliteStmtResultSetImpl::SqliteStmtResultSetImpl ( sqlite3_stmt * stmt)
explicitnoexcept

Member Function Documentation

◆ getColumns()

size_t impl::SqliteStmtResultSetImpl::getColumns ( ) const
nodiscardoverridevirtualnoexcept

Get the number of columns in the record.

Returns
Number of columns in the result set record

Implements sese::db::ResultSet.

◆ getDateTime()

std::optional< sese::DateTime > impl::SqliteStmtResultSetImpl::getDateTime ( size_t index) const
nodiscardoverridevirtualnoexcept

Get a time data structure from the current record.

Parameters
indexIndex
Returns
Time data structure

Implements sese::db::ResultSet.

References sese::text::DateTimeParser::parse().

◆ getDouble()

double impl::SqliteStmtResultSetImpl::getDouble ( size_t index) const
nodiscardoverridevirtualnoexcept

Get a double-precision floating-point value from the current record.

Parameters
indexIndex
Returns
Double-precision floating-point value

Implements sese::db::ResultSet.

◆ getFloat()

float impl::SqliteStmtResultSetImpl::getFloat ( size_t index) const
nodiscardoverridevirtualnoexcept

Get a single-precision floating-point value from the current record.

Parameters
indexIndex
Returns
Single-precision floating-point value

Implements sese::db::ResultSet.

◆ getInteger()

int32_t impl::SqliteStmtResultSetImpl::getInteger ( size_t index) const
nodiscardoverridevirtualnoexcept

Get an integer value from the current record.

Parameters
indexIndex
Returns
Integer value

Implements sese::db::ResultSet.

◆ getLong()

int64_t impl::SqliteStmtResultSetImpl::getLong ( size_t index) const
nodiscardoverridevirtualnoexcept

Get a long integer value from the current record.

Parameters
indexIndex
Returns
Long integer value

Implements sese::db::ResultSet.

◆ getString()

std::string_view impl::SqliteStmtResultSetImpl::getString ( size_t index) const
nodiscardoverridevirtualnoexcept

Get a string from the current record.

Parameters
indexIndex
Returns
String

Implements sese::db::ResultSet.

◆ isNull()

bool impl::SqliteStmtResultSetImpl::isNull ( size_t index) const
nodiscardoverridevirtualnoexcept

Determine if the returned result is null.

Parameters
indexIndex
Returns
Whether it is null

Implements sese::db::ResultSet.

◆ next()

bool impl::SqliteStmtResultSetImpl::next ( )
nodiscardoverridevirtualnoexcept

Move to the next record.

Returns
Whether there is a next record

Implements sese::db::ResultSet.

◆ reset()

void impl::SqliteStmtResultSetImpl::reset ( )
overridevirtualnoexcept

Locate the first query record.

Implements sese::db::ResultSet.

References stmt.

Member Data Documentation

◆ stmt

sqlite3_stmt* sese::db::impl::SqliteStmtResultSetImpl::stmt
protected

Referenced by reset().


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