summaryrefslogtreecommitdiffstats
path: root/src/sql
diff options
context:
space:
mode:
Diffstat (limited to 'src/sql')
-rw-r--r--src/sql/kernel/qsqlcachedresult.cpp8
-rw-r--r--src/sql/kernel/qsqlcachedresult_p.h9
-rw-r--r--src/sql/kernel/qsqldriver.cpp5
-rw-r--r--src/sql/kernel/qsqldriver.h16
-rw-r--r--src/sql/kernel/qsqldriver_p.h17
-rw-r--r--src/sql/kernel/qsqlindex.cpp3
-rw-r--r--src/sql/kernel/qsqlquery.cpp6
-rw-r--r--src/sql/kernel/qsqlquery.h4
-rw-r--r--src/sql/kernel/qsqlresult_p.h35
-rw-r--r--src/sql/models/qsqlrelationaltablemodel.cpp6
-rw-r--r--src/sql/models/qsqlrelationaltablemodel.h2
-rw-r--r--src/sql/models/qsqltablemodel.cpp4
-rw-r--r--src/sql/models/qsqltablemodel.h4
13 files changed, 47 insertions, 72 deletions
diff --git a/src/sql/kernel/qsqlcachedresult.cpp b/src/sql/kernel/qsqlcachedresult.cpp
index c335d7d8fe..1e76154f82 100644
--- a/src/sql/kernel/qsqlcachedresult.cpp
+++ b/src/sql/kernel/qsqlcachedresult.cpp
@@ -60,14 +60,6 @@ QT_BEGIN_NAMESPACE
static const uint initial_cache_size = 128;
-QSqlCachedResultPrivate::QSqlCachedResultPrivate(QSqlCachedResult *q, const QSqlDriver *drv)
- : QSqlResultPrivate(q, drv),
- rowCacheEnd(0),
- colCount(0),
- atEnd(false)
-{
-}
-
void QSqlCachedResultPrivate::cleanup()
{
cache.clear();
diff --git a/src/sql/kernel/qsqlcachedresult_p.h b/src/sql/kernel/qsqlcachedresult_p.h
index 543a902554..1bca1fd090 100644
--- a/src/sql/kernel/qsqlcachedresult_p.h
+++ b/src/sql/kernel/qsqlcachedresult_p.h
@@ -101,7 +101,8 @@ class Q_SQL_EXPORT QSqlCachedResultPrivate: public QSqlResultPrivate
Q_DECLARE_PUBLIC(QSqlCachedResult)
public:
- QSqlCachedResultPrivate(QSqlCachedResult *q, const QSqlDriver *drv);
+ using QSqlResultPrivate::QSqlResultPrivate;
+
bool canSeek(int i) const;
inline int cacheCount() const;
void init(int count, bool fo);
@@ -110,9 +111,9 @@ public:
void revertLast();
QSqlCachedResult::ValueCache cache;
- int rowCacheEnd;
- int colCount;
- bool atEnd;
+ int rowCacheEnd = 0;
+ int colCount = 0;
+ bool atEnd = false;
};
QT_END_NAMESPACE
diff --git a/src/sql/kernel/qsqldriver.cpp b/src/sql/kernel/qsqldriver.cpp
index d1c9057aac..638476c2c1 100644
--- a/src/sql/kernel/qsqldriver.cpp
+++ b/src/sql/kernel/qsqldriver.cpp
@@ -51,11 +51,10 @@ QT_BEGIN_NAMESPACE
static QString prepareIdentifier(const QString &identifier,
QSqlDriver::IdentifierType type, const QSqlDriver *driver)
{
- Q_ASSERT( driver != nullptr );
+ Q_ASSERT(driver != nullptr);
QString ret = identifier;
- if (!driver->isIdentifierEscaped(identifier, type)) {
+ if (!driver->isIdentifierEscaped(identifier, type))
ret = driver->escapeIdentifier(identifier, type);
- }
return ret;
}
diff --git a/src/sql/kernel/qsqldriver.h b/src/sql/kernel/qsqldriver.h
index ca9f7dc51e..31de63be15 100644
--- a/src/sql/kernel/qsqldriver.h
+++ b/src/sql/kernel/qsqldriver.h
@@ -100,7 +100,7 @@ public:
virtual QStringList tables(QSql::TableType tableType) const;
virtual QSqlIndex primaryIndex(const QString &tableName) const;
virtual QSqlRecord record(const QString &tableName) const;
- virtual QString formatValue(const QSqlField& field, bool trimStrings = false) const;
+ virtual QString formatValue(const QSqlField &field, bool trimStrings = false) const;
virtual QString escapeIdentifier(const QString &identifier, IdentifierType type) const;
virtual QString sqlStatement(StatementType type, const QString &tableName,
@@ -113,12 +113,12 @@ public:
virtual void close() = 0;
virtual QSqlResult *createResult() const = 0;
- virtual bool open(const QString& db,
- const QString& user = QString(),
- const QString& password = QString(),
- const QString& host = QString(),
+ virtual bool open(const QString &db,
+ const QString &user = QString(),
+ const QString &password = QString(),
+ const QString &host = QString(),
int port = -1,
- const QString& connOpts = QString()) = 0;
+ const QString &connOpts = QString()) = 0;
virtual bool subscribeToNotification(const QString &name);
virtual bool unsubscribeFromNotification(const QString &name);
virtual QStringList subscribedToNotifications() const;
@@ -135,10 +135,6 @@ public Q_SLOTS:
virtual bool cancelQuery();
Q_SIGNALS:
-#if QT_DEPRECATED_SINCE(5, 15)
- QT_DEPRECATED_X("Use the 3-args version of notification() instead.")
- void notification(const QString &name);
-#endif
void notification(const QString &name, QSqlDriver::NotificationSource source, const QVariant &payload);
protected:
diff --git a/src/sql/kernel/qsqldriver_p.h b/src/sql/kernel/qsqldriver_p.h
index c8ec961124..614fbf69a1 100644
--- a/src/sql/kernel/qsqldriver_p.h
+++ b/src/sql/kernel/qsqldriver_p.h
@@ -63,19 +63,16 @@ class QSqlDriverPrivate : public QObjectPrivate
Q_DECLARE_PUBLIC(QSqlDriver)
public:
- QSqlDriverPrivate()
- : QObjectPrivate(),
- isOpen(false),
- isOpenError(false),
- precisionPolicy(QSql::LowPrecisionDouble),
- dbmsType(QSqlDriver::UnknownDbms)
- { }
+ QSqlDriverPrivate(QSqlDriver::DbmsType dbmstype = QSqlDriver::UnknownDbms)
+ : QObjectPrivate()
+ , dbmsType(dbmstype)
+ {}
- uint isOpen;
- uint isOpenError;
QSqlError error;
- QSql::NumericalPrecisionPolicy precisionPolicy;
+ QSql::NumericalPrecisionPolicy precisionPolicy = QSql::LowPrecisionDouble;
QSqlDriver::DbmsType dbmsType;
+ bool isOpen = false;
+ bool isOpenError = false;
};
QT_END_NAMESPACE
diff --git a/src/sql/kernel/qsqlindex.cpp b/src/sql/kernel/qsqlindex.cpp
index 60b0ef6965..5781f24b5c 100644
--- a/src/sql/kernel/qsqlindex.cpp
+++ b/src/sql/kernel/qsqlindex.cpp
@@ -44,9 +44,6 @@
QT_BEGIN_NAMESPACE
-// ### Qt 6: remove the static assertion, the 'sorts' field was changed from QList to QVector in Qt 5.6
-Q_STATIC_ASSERT((sizeof(QList<bool>) == sizeof(QVector<bool>)));
-
/*!
\class QSqlIndex
\brief The QSqlIndex class provides functions to manipulate and
diff --git a/src/sql/kernel/qsqlquery.cpp b/src/sql/kernel/qsqlquery.cpp
index 34a3ba3755..ce6c997919 100644
--- a/src/sql/kernel/qsqlquery.cpp
+++ b/src/sql/kernel/qsqlquery.cpp
@@ -261,7 +261,7 @@ QSqlQuery::QSqlQuery(const QSqlQuery& other)
/*!
\internal
*/
-static void qInit(QSqlQuery *q, const QString& query, QSqlDatabase db)
+static void qInit(QSqlQuery *q, const QString& query, const QSqlDatabase &db)
{
QSqlDatabase database = db;
if (!database.isValid())
@@ -281,7 +281,7 @@ static void qInit(QSqlQuery *q, const QString& query, QSqlDatabase db)
\sa QSqlDatabase
*/
-QSqlQuery::QSqlQuery(const QString& query, QSqlDatabase db)
+QSqlQuery::QSqlQuery(const QString& query, const QSqlDatabase &db)
{
d = QSqlQueryPrivate::shared_null();
qInit(this, query, db);
@@ -294,7 +294,7 @@ QSqlQuery::QSqlQuery(const QString& query, QSqlDatabase db)
\sa QSqlDatabase
*/
-QSqlQuery::QSqlQuery(QSqlDatabase db)
+QSqlQuery::QSqlQuery(const QSqlDatabase &db)
{
d = QSqlQueryPrivate::shared_null();
qInit(this, QString(), db);
diff --git a/src/sql/kernel/qsqlquery.h b/src/sql/kernel/qsqlquery.h
index cbbc25c4ec..3be04c492c 100644
--- a/src/sql/kernel/qsqlquery.h
+++ b/src/sql/kernel/qsqlquery.h
@@ -59,8 +59,8 @@ class Q_SQL_EXPORT QSqlQuery
{
public:
explicit QSqlQuery(QSqlResult *r);
- explicit QSqlQuery(const QString& query = QString(), QSqlDatabase db = QSqlDatabase());
- explicit QSqlQuery(QSqlDatabase db);
+ explicit QSqlQuery(const QString& query = QString(), const QSqlDatabase &db = QSqlDatabase());
+ explicit QSqlQuery(const QSqlDatabase &db);
QSqlQuery(const QSqlQuery& other);
QSqlQuery& operator=(const QSqlQuery& other);
~QSqlQuery();
diff --git a/src/sql/kernel/qsqlresult_p.h b/src/sql/kernel/qsqlresult_p.h
index f0816a7fb5..3b9697046d 100644
--- a/src/sql/kernel/qsqlresult_p.h
+++ b/src/sql/kernel/qsqlresult_p.h
@@ -79,16 +79,9 @@ class Q_SQL_EXPORT QSqlResultPrivate
public:
QSqlResultPrivate(QSqlResult *q, const QSqlDriver *drv)
: q_ptr(q),
- sqldriver(const_cast<QSqlDriver*>(drv)),
- idx(QSql::BeforeFirstRow),
- active(false),
- isSel(false),
- forwardOnly(false),
- precisionPolicy(QSql::LowPrecisionDouble),
- bindCount(0),
- binds(QSqlResult::PositionalBinding)
+ sqldriver(const_cast<QSqlDriver *>(drv))
{ }
- virtual ~QSqlResultPrivate() { }
+ virtual ~QSqlResultPrivate() = default;
void clearValues()
{
@@ -111,7 +104,7 @@ public:
void clear()
{
clearValues();
- clearIndex();;
+ clearIndex();
}
virtual QString fieldSerial(int) const;
@@ -119,27 +112,27 @@ public:
QString namedToPositionalBinding(const QString &query);
QString holderAt(int index) const;
- QSqlResult *q_ptr;
+ QSqlResult *q_ptr = nullptr;
QPointer<QSqlDriver> sqldriver;
- int idx;
QString sql;
- bool active;
- bool isSel;
QSqlError error;
- bool forwardOnly;
- QSql::NumericalPrecisionPolicy precisionPolicy;
-
- int bindCount;
- QSqlResult::BindingSyntax binds;
QString executedQuery;
QHash<int, QSql::ParamType> types;
QVector<QVariant> values;
- typedef QHash<QString, QVector<int> > IndexMap;
+ using IndexMap = QHash<QString, QVector<int> >;
IndexMap indexes;
- typedef QVector<QHolder> QHolderVector;
+ using QHolderVector = QVector<QHolder>;
QHolderVector holders;
+
+ QSqlResult::BindingSyntax binds = QSqlResult::PositionalBinding;
+ QSql::NumericalPrecisionPolicy precisionPolicy = QSql::LowPrecisionDouble;
+ int idx = QSql::BeforeFirstRow;
+ int bindCount = 0;
+ bool active = false;
+ bool isSel = false;
+ bool forwardOnly = false;
};
QT_END_NAMESPACE
diff --git a/src/sql/models/qsqlrelationaltablemodel.cpp b/src/sql/models/qsqlrelationaltablemodel.cpp
index 20adec6a3b..4f5f00bf96 100644
--- a/src/sql/models/qsqlrelationaltablemodel.cpp
+++ b/src/sql/models/qsqlrelationaltablemodel.cpp
@@ -161,7 +161,7 @@ struct QRelation
class QRelatedTableModel : public QSqlTableModel
{
public:
- QRelatedTableModel(QRelation *rel, QObject *parent = nullptr, QSqlDatabase db = QSqlDatabase());
+ QRelatedTableModel(QRelation *rel, QObject *parent = nullptr, const QSqlDatabase &db = QSqlDatabase());
bool select() override;
private:
bool firstSelect;
@@ -245,7 +245,7 @@ bool QRelation::isValid()
-QRelatedTableModel::QRelatedTableModel(QRelation *rel, QObject *parent, QSqlDatabase db) :
+QRelatedTableModel::QRelatedTableModel(QRelation *rel, QObject *parent, const QSqlDatabase &db) :
QSqlTableModel(parent, db), firstSelect(true), relation(rel)
{
}
@@ -410,7 +410,7 @@ void QSqlRelationalTableModelPrivate::clearCache()
and the database connection to \a db. If \a db is not valid, the
default database connection will be used.
*/
-QSqlRelationalTableModel::QSqlRelationalTableModel(QObject *parent, QSqlDatabase db)
+QSqlRelationalTableModel::QSqlRelationalTableModel(QObject *parent, const QSqlDatabase &db)
: QSqlTableModel(*new QSqlRelationalTableModelPrivate, parent, db)
{
}
diff --git a/src/sql/models/qsqlrelationaltablemodel.h b/src/sql/models/qsqlrelationaltablemodel.h
index 1929bd320a..2ebadaabd1 100644
--- a/src/sql/models/qsqlrelationaltablemodel.h
+++ b/src/sql/models/qsqlrelationaltablemodel.h
@@ -91,7 +91,7 @@ public:
};
explicit QSqlRelationalTableModel(QObject *parent = nullptr,
- QSqlDatabase db = QSqlDatabase());
+ const QSqlDatabase &db = QSqlDatabase());
virtual ~QSqlRelationalTableModel();
QVariant data(const QModelIndex &item, int role = Qt::DisplayRole) const override;
diff --git a/src/sql/models/qsqltablemodel.cpp b/src/sql/models/qsqltablemodel.cpp
index 4b29492134..4d20915c09 100644
--- a/src/sql/models/qsqltablemodel.cpp
+++ b/src/sql/models/qsqltablemodel.cpp
@@ -291,7 +291,7 @@ bool QSqlTableModelPrivate::exec(const QString &stmt, bool prepStatement,
The default edit strategy is \l OnRowChange.
*/
-QSqlTableModel::QSqlTableModel(QObject *parent, QSqlDatabase db)
+QSqlTableModel::QSqlTableModel(QObject *parent, const QSqlDatabase &db)
: QSqlQueryModel(*new QSqlTableModelPrivate, parent)
{
Q_D(QSqlTableModel);
@@ -300,7 +300,7 @@ QSqlTableModel::QSqlTableModel(QObject *parent, QSqlDatabase db)
/*! \internal
*/
-QSqlTableModel::QSqlTableModel(QSqlTableModelPrivate &dd, QObject *parent, QSqlDatabase db)
+QSqlTableModel::QSqlTableModel(QSqlTableModelPrivate &dd, QObject *parent, const QSqlDatabase &db)
: QSqlQueryModel(dd, parent)
{
Q_D(QSqlTableModel);
diff --git a/src/sql/models/qsqltablemodel.h b/src/sql/models/qsqltablemodel.h
index eba27e60ec..1ac8bd9b04 100644
--- a/src/sql/models/qsqltablemodel.h
+++ b/src/sql/models/qsqltablemodel.h
@@ -62,7 +62,7 @@ class Q_SQL_EXPORT QSqlTableModel: public QSqlQueryModel
public:
enum EditStrategy {OnFieldChange, OnRowChange, OnManualSubmit};
- explicit QSqlTableModel(QObject *parent = nullptr, QSqlDatabase db = QSqlDatabase());
+ explicit QSqlTableModel(QObject *parent = nullptr, const QSqlDatabase &db = QSqlDatabase());
virtual ~QSqlTableModel();
virtual void setTable(const QString &tableName);
@@ -127,7 +127,7 @@ Q_SIGNALS:
void beforeDelete(int row);
protected:
- QSqlTableModel(QSqlTableModelPrivate &dd, QObject *parent = nullptr, QSqlDatabase db = QSqlDatabase());
+ QSqlTableModel(QSqlTableModelPrivate &dd, QObject *parent = nullptr, const QSqlDatabase &db = QSqlDatabase());
virtual bool updateRowInTable(int row, const QSqlRecord &values);
virtual bool insertRowIntoTable(const QSqlRecord &values);