19#include <QtSql/private/qtsqlglobal_p.h>
20#include <QtCore/qpointer.h>
21#include <QtCore/qhash.h>
29#define Q_DECLARE_SQLDRIVER_PRIVATE(Class)
30 inline const Class##Private* drv_d_func() const { return !sqldriver ? nullptr : reinterpret_cast<const Class *>(static_cast<const QSqlDriver*>(sqldriver))->d_func(); }
31 inline Class##Private* drv_d_func() { return !sqldriver ? nullptr : reinterpret_cast<Class *>(static_cast<QSqlDriver*>(sqldriver))->d_func(); }
35 bool operator==(
const QHolder &h)
const {
return h.holderPos == holderPos && h.holderName == holderName; }
36 bool operator!=(
const QHolder &h)
const {
return h.holderPos != holderPos || h.holderName != holderName; }
43 Q_DECLARE_PUBLIC(QSqlResult)
46 QSqlResultPrivate(QSqlResult *q,
const QSqlDriver *drv)
48 sqldriver(
const_cast<QSqlDriver *>(drv))
50 virtual ~QSqlResultPrivate() =
default;
89 using IndexMap = QHash<QString, QList<
int>>;
97 int idx = QSql::BeforeFirstRow;
QString holderAt(int index) const
QList< QHolder > QHolderVector
QString namedToPositionalBinding(const QString &query)
QString positionalToNamedBinding(const QString &query) const
static bool isVariantNull(const QVariant &variant)
QPointer< QSqlDriver > sqldriver
QSql::NumericalPrecisionPolicy precisionPolicy
bool positionalBindingEnabled
QSqlResult::BindingSyntax binds
virtual QString fieldSerial(qsizetype) const
QHash< int, QSql::ParamType > types
void clear()
Clears the entire result set and releases any associated resources.
void resetBindCount()
Resets the number of bind parameters.
Combined button and popup list for selecting options.
static bool qIsAlnum(QChar ch)
bool operator==(const QHolder &h) const
QHolder(const QString &hldr=QString(), qsizetype index=-1)
bool operator!=(const QHolder &h) const