![]() |
Qt 6.x
The Qt SDK
|
The QSqlQueryModel class provides a read-only data model for SQL result sets. More...
#include <qsqlquerymodel.h>
Public Member Functions | |
QSqlQueryModel (QObject *parent=nullptr) | |
Creates an empty QSqlQueryModel with the given parent. | |
virtual | ~QSqlQueryModel () |
Destroys the object and frees any allocated resources. | |
int | rowCount (const QModelIndex &parent=QModelIndex()) const override |
int | columnCount (const QModelIndex &parent=QModelIndex()) const override |
\reimp | |
QSqlRecord | record (int row) const |
Returns the record containing information about the fields of the current query. | |
QSqlRecord | record () const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.Returns an empty record containing information about the fields of the current query. | |
QVariant | data (const QModelIndex &item, int role=Qt::DisplayRole) const override |
Returns the value for the specified item and role. | |
QVariant | headerData (int section, Qt::Orientation orientation, int role=Qt::DisplayRole) const override |
Returns the header data for the given role in the section of the header with the specified orientation. | |
bool | setHeaderData (int section, Qt::Orientation orientation, const QVariant &value, int role=Qt::EditRole) override |
Sets the caption for a horizontal header for the specified role to value. | |
bool | insertColumns (int column, int count, const QModelIndex &parent=QModelIndex()) override |
Inserts count columns into the model at position column. | |
bool | removeColumns (int column, int count, const QModelIndex &parent=QModelIndex()) override |
Removes count columns from the model starting from position column. | |
void | setQuery (QSqlQuery &&query) |
Resets the model and sets the data provider to be the given query. | |
void | setQuery (const QString &query, const QSqlDatabase &db=QSqlDatabase()) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.Executes the query query for the given database connection db. | |
const QSqlQuery & | query (QT6_DECL_NEW_OVERLOAD) const |
Returns a reference to the const QSqlQuery object associated with this model. | |
virtual void | clear () |
Clears the model and releases any acquired resource. | |
QSqlError | lastError () const |
Returns information about the last error that occurred on the database. | |
void | fetchMore (const QModelIndex &parent=QModelIndex()) override |
bool | canFetchMore (const QModelIndex &parent=QModelIndex()) const override |
QHash< int, QByteArray > | roleNames () const override |
![]() | |
QAbstractTableModel (QObject *parent=nullptr) | |
Constructs an abstract table model for the given parent. | |
~QAbstractTableModel () | |
Destroys the abstract table model. | |
QModelIndex | index (int row, int column, const QModelIndex &parent=QModelIndex()) const override |
Returns the index of the data in row and column with parent. | |
QModelIndex | sibling (int row, int column, const QModelIndex &idx) const override |
\reimp | |
bool | dropMimeData (const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent) override |
\reimp | |
Qt::ItemFlags | flags (const QModelIndex &index) const override |
\reimp | |
QObject * | parent () const |
Returns a pointer to the parent object. | |
![]() | |
QAbstractItemModel (QObject *parent=nullptr) | |
Constructs an abstract item model with the given parent. | |
virtual | ~QAbstractItemModel () |
Destroys the abstract item model. | |
Q_INVOKABLE bool | hasIndex (int row, int column, const QModelIndex &parent=QModelIndex()) const |
Returns {true} if the model returns a valid QModelIndex for row and column with parent, otherwise returns {false}. | |
virtual Q_INVOKABLE QModelIndex | index (int row, int column, const QModelIndex &parent=QModelIndex()) const =0 |
Returns the index of the item in the model specified by the given row, column and parent index. | |
virtual Q_INVOKABLE QModelIndex | parent (const QModelIndex &child) const =0 |
virtual Q_INVOKABLE QModelIndex | sibling (int row, int column, const QModelIndex &idx) const |
Returns the sibling at row and column for the item at index, or an invalid QModelIndex if there is no sibling at that location. | |
virtual Q_INVOKABLE int | rowCount (const QModelIndex &parent=QModelIndex()) const =0 |
Returns the number of rows under the given parent. | |
virtual Q_INVOKABLE int | columnCount (const QModelIndex &parent=QModelIndex()) const =0 |
Returns the number of columns for the children of the given parent. | |
virtual Q_INVOKABLE bool | hasChildren (const QModelIndex &parent=QModelIndex()) const |
Returns {true} if parent has any children; otherwise returns {false}. | |
virtual Q_INVOKABLE QVariant | data (const QModelIndex &index, int role=Qt::DisplayRole) const =0 |
Returns the data stored under the given role for the item referred to by the index. | |
virtual Q_INVOKABLE bool | setData (const QModelIndex &index, const QVariant &value, int role=Qt::EditRole) |
Sets the role data for the item at index to value. | |
virtual Q_INVOKABLE QVariant | headerData (int section, Qt::Orientation orientation, int role=Qt::DisplayRole) const |
Returns the data for the given role and section in the header with the specified orientation. | |
virtual bool | setHeaderData (int section, Qt::Orientation orientation, const QVariant &value, int role=Qt::EditRole) |
Sets the data for the given role and section in the header with the specified orientation to the value supplied. | |
virtual QMap< int, QVariant > | itemData (const QModelIndex &index) const |
Returns a map with values for all predefined roles in the model for the item at the given index. | |
virtual bool | setItemData (const QModelIndex &index, const QMap< int, QVariant > &roles) |
Sets the role data for the item at index to the associated value in roles, for every Qt::ItemDataRole. | |
virtual bool | clearItemData (const QModelIndex &index) |
virtual QStringList | mimeTypes () const |
Returns the list of allowed MIME types. | |
virtual QMimeData * | mimeData (const QModelIndexList &indexes) const |
Returns an object that contains serialized items of data corresponding to the list of indexes specified. | |
virtual bool | canDropMimeData (const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent) const |
Returns {true} if a model can accept a drop of the data. | |
virtual bool | dropMimeData (const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent) |
Handles the data supplied by a drag and drop operation that ended with the given action. | |
virtual Qt::DropActions | supportedDropActions () const |
virtual Qt::DropActions | supportedDragActions () const |
Returns the actions supported by the data in this model. | |
Q_INVOKABLE | Q_REVISION (6, 4) virtual bool insertRows(int row |
Q_INVOKABLE | Q_REVISION (6, 4) virtual bool insertColumns(int column |
Q_INVOKABLE | Q_REVISION (6, 4) virtual bool removeRows(int row |
Q_INVOKABLE | Q_REVISION (6, 4) virtual bool removeColumns(int column |
Q_INVOKABLE | Q_REVISION (6, 4) virtual bool moveRows(const QModelIndex &sourceParent |
Q_INVOKABLE | Q_REVISION (6, 4) virtual bool moveColumns(const QModelIndex &sourceParent |
Q_INVOKABLE | Q_REVISION (6, 4) inline bool insertRow(int row |
Q_INVOKABLE | Q_REVISION (6, 4) inline bool insertColumn(int column |
Q_INVOKABLE | Q_REVISION (6, 4) inline bool removeRow(int row |
Q_INVOKABLE | Q_REVISION (6, 4) inline bool removeColumn(int column |
Q_INVOKABLE | Q_REVISION (6, 4) inline bool moveRow(const QModelIndex &sourceParent |
Q_INVOKABLE | Q_REVISION (6, 4) inline bool moveColumn(const QModelIndex &sourceParent |
virtual Q_INVOKABLE void | fetchMore (const QModelIndex &parent) |
Fetches any available data for the items with the parent specified by the parent index. | |
virtual Q_INVOKABLE bool | canFetchMore (const QModelIndex &parent) const |
Returns {true} if there is more data available for parent; otherwise returns {false}. | |
virtual Q_INVOKABLE Qt::ItemFlags | flags (const QModelIndex &index) const |
Returns the item flags for the given index. | |
Q_INVOKABLE | Q_REVISION (6, 4) virtual void sort(int column |
virtual QModelIndex | buddy (const QModelIndex &index) const |
Returns a model index for the buddy of the item represented by index. | |
virtual Q_INVOKABLE QModelIndexList | match (const QModelIndex &start, int role, const QVariant &value, int hits=1, Qt::MatchFlags flags=Qt::MatchFlags(Qt::MatchStartsWith|Qt::MatchWrap)) const |
Returns a list of indexes for the items in the column of the start index where data stored under the given role matches the specified value. | |
virtual QSize | span (const QModelIndex &index) const |
Returns the row and column span of the item represented by index. | |
virtual QHash< int, QByteArray > | roleNames () const |
bool | checkIndex (const QModelIndex &index, CheckIndexOptions options=CheckIndexOption::NoOption) const |
virtual void | multiData (const QModelIndex &index, QModelRoleDataSpan roleDataSpan) const |
QObject * | parent () const |
Returns a pointer to the parent object. | |
![]() | |
Q_INVOKABLE | QObject (QObject *parent=nullptr) |
Constructs an object with parent object parent. | |
virtual | ~QObject () |
Destroys the object, deleting all its child objects. | |
virtual bool | event (QEvent *event) |
This virtual function receives events to an object and should return true if the event e was recognized and processed. | |
virtual bool | eventFilter (QObject *watched, QEvent *event) |
Filters events if this object has been installed as an event filter for the watched object. | |
QString | objectName () const |
Q_WEAK_OVERLOAD void | setObjectName (const QString &name) |
Sets the object's name to name. | |
void | setObjectName (QAnyStringView name) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. | |
QBindable< QString > | bindableObjectName () |
bool | isWidgetType () const |
Returns true if the object is a widget; otherwise returns false . | |
bool | isWindowType () const |
Returns true if the object is a window; otherwise returns false . | |
bool | isQuickItemType () const |
Returns true if the object is a QQuickItem; otherwise returns false . | |
bool | signalsBlocked () const noexcept |
Returns true if signals are blocked; otherwise returns false . | |
bool | blockSignals (bool b) noexcept |
If block is true, signals emitted by this object are blocked (i.e., emitting a signal will not invoke anything connected to it). | |
QThread * | thread () const |
Returns the thread in which the object lives. | |
void | moveToThread (QThread *thread) |
Changes the thread affinity for this object and its children. | |
int | startTimer (int interval, Qt::TimerType timerType=Qt::CoarseTimer) |
This is an overloaded function that will start a timer of type timerType and a timeout of interval milliseconds. | |
int | startTimer (std::chrono::milliseconds time, Qt::TimerType timerType=Qt::CoarseTimer) |
void | killTimer (int id) |
Kills the timer with timer identifier, id. | |
template<typename T > | |
T | findChild (const QString &aName=QString(), Qt::FindChildOptions options=Qt::FindChildrenRecursively) const |
Returns the child of this object that can be cast into type T and that is called name, or \nullptr if there is no such object. | |
template<typename T > | |
QList< T > | findChildren (const QString &aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const |
Returns all children of this object with the given name that can be cast to type T, or an empty list if there are no such objects. | |
template<typename T > | |
QList< T > | findChildren (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. | |
const QObjectList & | children () const |
Returns a list of child objects. | |
void | setParent (QObject *parent) |
Makes the object a child of parent. | |
void | installEventFilter (QObject *filterObj) |
Installs an event filter filterObj on this object. | |
void | removeEventFilter (QObject *obj) |
Removes an event filter object obj from this object. | |
QMetaObject::Connection | connect (const QObject *sender, const char *signal, const char *member, Qt::ConnectionType type=Qt::AutoConnection) const |
bool | disconnect (const char *signal=nullptr, const QObject *receiver=nullptr, const char *member=nullptr) const |
bool | disconnect (const QObject *receiver, const char *member=nullptr) const |
void | dumpObjectTree () const |
Dumps a tree of children to the debug output. | |
void | dumpObjectInfo () const |
Dumps information about signal connections, etc. | |
bool | setProperty (const char *name, const QVariant &value) |
Sets the value of the object's name property to value. | |
bool | setProperty (const char *name, QVariant &&value) |
QVariant | property (const char *name) const |
Returns the value of the object's name property. | |
QList< QByteArray > | dynamicPropertyNames () const |
QBindingStorage * | bindingStorage () |
const QBindingStorage * | bindingStorage () const |
QObject * | parent () const |
Returns a pointer to the parent object. | |
bool | inherits (const char *classname) const |
Returns true if this object is an instance of a class that inherits className or a QObject subclass that inherits className; otherwise returns false . | |
Protected Member Functions | |
void | beginInsertRows (const QModelIndex &parent, int first, int last) |
void | endInsertRows () |
void | beginRemoveRows (const QModelIndex &parent, int first, int last) |
void | endRemoveRows () |
void | beginInsertColumns (const QModelIndex &parent, int first, int last) |
void | endInsertColumns () |
void | beginRemoveColumns (const QModelIndex &parent, int first, int last) |
void | endRemoveColumns () |
void | beginResetModel () |
void | endResetModel () |
virtual void | queryChange () |
This virtual function is called whenever the query changes. | |
virtual QModelIndex | indexInQuery (const QModelIndex &item) const |
Returns the index of the value in the database result set for the given item in the model. | |
void | setLastError (const QSqlError &error) |
Protected function which allows derived classes to set the value of the last error that occurred on the database to error. | |
QSqlQueryModel (QSqlQueryModelPrivate &dd, QObject *parent=nullptr) | |
![]() | |
QAbstractTableModel (QAbstractItemModelPrivate &dd, QObject *parent) | |
![]() | |
QAbstractItemModel (QAbstractItemModelPrivate &dd, QObject *parent=nullptr) | |
QModelIndex | createIndex (int row, int column, const void *data=nullptr) const |
Creates a model index for the given row and column with the internal pointer ptr. | |
QModelIndex | createIndex (int row, int column, quintptr id) const |
Creates a model index for the given row and column with the internal identifier, id. | |
void | encodeData (const QModelIndexList &indexes, QDataStream &stream) const |
bool | decodeData (int row, int column, const QModelIndex &parent, QDataStream &stream) |
void | beginInsertRows (const QModelIndex &parent, int first, int last) |
Begins a row insertion operation. | |
void | endInsertRows () |
Ends a row insertion operation. | |
void | beginRemoveRows (const QModelIndex &parent, int first, int last) |
Begins a row removal operation. | |
void | endRemoveRows () |
Ends a row removal operation. | |
bool | beginMoveRows (const QModelIndex &sourceParent, int sourceFirst, int sourceLast, const QModelIndex &destinationParent, int destinationRow) |
void | endMoveRows () |
Ends a row move operation. | |
void | beginInsertColumns (const QModelIndex &parent, int first, int last) |
Begins a column insertion operation. | |
void | endInsertColumns () |
Ends a column insertion operation. | |
void | beginRemoveColumns (const QModelIndex &parent, int first, int last) |
Begins a column removal operation. | |
void | endRemoveColumns () |
Ends a column removal operation. | |
bool | beginMoveColumns (const QModelIndex &sourceParent, int sourceFirst, int sourceLast, const QModelIndex &destinationParent, int destinationColumn) |
Begins a column move operation. | |
void | endMoveColumns () |
Ends a column move operation. | |
void | beginResetModel () |
Begins a model reset operation. | |
void | endResetModel () |
Completes a model reset operation. | |
void | changePersistentIndex (const QModelIndex &from, const QModelIndex &to) |
Changes the QPersistentModelIndex that is equal to the given from model index to the given to model index. | |
void | changePersistentIndexList (const QModelIndexList &from, const QModelIndexList &to) |
QModelIndexList | persistentIndexList () const |
![]() | |
QObject * | sender () const |
Returns a pointer to the object that sent the signal, if called in a slot activated by a signal; otherwise it returns \nullptr. | |
int | senderSignalIndex () const |
int | receivers (const char *signal) const |
Returns the number of receivers connected to the signal. | |
bool | isSignalConnected (const QMetaMethod &signal) const |
virtual void | timerEvent (QTimerEvent *event) |
This event handler can be reimplemented in a subclass to receive timer events for the object. | |
virtual void | childEvent (QChildEvent *event) |
This event handler can be reimplemented in a subclass to receive child events. | |
virtual void | customEvent (QEvent *event) |
This event handler can be reimplemented in a subclass to receive custom events. | |
virtual void | connectNotify (const QMetaMethod &signal) |
virtual void | disconnectNotify (const QMetaMethod &signal) |
QObject (QObjectPrivate &dd, QObject *parent=nullptr) | |
Additional Inherited Members | |
![]() | |
enum | LayoutChangeHint { NoLayoutChangeHint , VerticalSortHint , HorizontalSortHint } |
This enum describes the way the model changes layout. More... | |
enum class | CheckIndexOption { NoOption = 0x0000 , IndexIsValid = 0x0001 , DoNotUseParent = 0x0002 , ParentIsInvalid = 0x0004 } |
![]() | |
virtual bool | submit () |
Lets the model know that it should submit cached information to permanent storage. | |
virtual void | revert () |
Lets the model know that it should discard cached information. | |
![]() | |
void | deleteLater () |
\threadsafe | |
![]() | |
void | dataChanged (const QModelIndex &topLeft, const QModelIndex &bottomRight, const QList< int > &roles=QList< int >()) |
This signal is emitted whenever the data in an existing item changes. | |
void | headerDataChanged (Qt::Orientation orientation, int first, int last) |
This signal is emitted whenever a header is changed. | |
void | layoutChanged (const QList< QPersistentModelIndex > &parents=QList< QPersistentModelIndex >(), QAbstractItemModel::LayoutChangeHint hint=QAbstractItemModel::NoLayoutChangeHint) |
void | layoutAboutToBeChanged (const QList< QPersistentModelIndex > &parents=QList< QPersistentModelIndex >(), QAbstractItemModel::LayoutChangeHint hint=QAbstractItemModel::NoLayoutChangeHint) |
void | rowsAboutToBeInserted (const QModelIndex &parent, int first, int last, QPrivateSignal) |
This signal is emitted just before rows are inserted into the model. | |
void | rowsInserted (const QModelIndex &parent, int first, int last, QPrivateSignal) |
This signal is emitted after rows have been inserted into the model. | |
void | rowsAboutToBeRemoved (const QModelIndex &parent, int first, int last, QPrivateSignal) |
This signal is emitted just before rows are removed from the model. | |
void | rowsRemoved (const QModelIndex &parent, int first, int last, QPrivateSignal) |
This signal is emitted after rows have been removed from the model. | |
void | columnsAboutToBeInserted (const QModelIndex &parent, int first, int last, QPrivateSignal) |
This signal is emitted just before columns are inserted into the model. | |
void | columnsInserted (const QModelIndex &parent, int first, int last, QPrivateSignal) |
This signal is emitted after columns have been inserted into the model. | |
void | columnsAboutToBeRemoved (const QModelIndex &parent, int first, int last, QPrivateSignal) |
This signal is emitted just before columns are removed from the model. | |
void | columnsRemoved (const QModelIndex &parent, int first, int last, QPrivateSignal) |
This signal is emitted after columns have been removed from the model. | |
void | modelAboutToBeReset (QPrivateSignal) |
void | modelReset (QPrivateSignal) |
void | rowsAboutToBeMoved (const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destinationParent, int destinationRow, QPrivateSignal) |
void | rowsMoved (const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destinationParent, int destinationRow, QPrivateSignal) |
void | columnsAboutToBeMoved (const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destinationParent, int destinationColumn, QPrivateSignal) |
void | columnsMoved (const QModelIndex &sourceParent, int sourceStart, int sourceEnd, const QModelIndex &destinationParent, int destinationColumn, QPrivateSignal) |
![]() | |
void | destroyed (QObject *=nullptr) |
This signal is emitted immediately before the object obj is destroyed, after any instances of QPointer have been notified, and cannot be blocked. | |
void | objectNameChanged (const QString &objectName, QPrivateSignal) |
This signal is emitted after the object's name has been changed. | |
![]() | |
static QMetaObject::Connection | connect (const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection) |
\threadsafe | |
static QMetaObject::Connection | connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type=Qt::AutoConnection) |
template<typename Func1 , typename Func2 > | |
static QMetaObject::Connection | connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::ContextTypeForFunctor< Func2 >::ContextType *context, Func2 &&slot, Qt::ConnectionType type=Qt::AutoConnection) |
template<typename Func1 , typename Func2 > | |
static QMetaObject::Connection | connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, Func2 &&slot) |
static bool | disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *member) |
\threadsafe | |
static bool | disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &member) |
static bool | disconnect (const QMetaObject::Connection &) |
Disconnect a connection. | |
template<typename Func1 , typename Func2 > | |
static bool | disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiver, Func2 slot) |
template<typename Func1 > | |
static bool | disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const QObject *receiver, void **zero) |
![]() | |
Q_INVOKABLE int | count |
Q_INVOKABLE int const QModelIndex & | parent = QModelIndex()) |
Returns the parent of the model item with the given index. | |
Q_INVOKABLE int | sourceRow |
Q_INVOKABLE int int | count |
Q_INVOKABLE int int const QModelIndex & | destinationParent |
Q_INVOKABLE int int const QModelIndex int | destinationChild |
Q_INVOKABLE int | sourceColumn |
Q_INVOKABLE const QModelIndex & | parent = QModelIndex()) |
Q_INVOKABLE int const QModelIndex & | destinationParent |
Q_INVOKABLE int const QModelIndex int | destinationChild |
Q_INVOKABLE Qt::SortOrder | order = Qt::AscendingOrder) |
![]() | |
virtual void | resetInternalData () |
![]() | |
QScopedPointer< QObjectData > | d_ptr |
![]() | |
QString | objectName |
the name of this object | |
![]() | |
template< class T > T | qobject_cast (const QObject *object) |
Returns the given object cast to type T if the object is of type T (or of a subclass); otherwise returns \nullptr. | |
template< typename T > T | qFindChildqFindChildren (const QObject *obj, const QString &name)() |
template< typename T > QList< T > | qFindChildrenqFindChildren (const QObject *obj, const QString &name)() |
QObjectList | |
\macro Q_CLASSINFO(Name, Value) | |
The QSqlQueryModel class provides a read-only data model for SQL result sets.
\inmodule QtSql
QSqlQueryModel is a high-level interface for executing SQL statements and traversing the result set. It is built on top of the lower-level QSqlQuery and can be used to provide data to view classes such as QTableView. For example:
We set the model's query, then we set up the labels displayed in the view header.
QSqlQueryModel can also be used to access a database programmatically, without binding it to a view:
The code snippet above extracts the salary
field from record 4 in the result set of the SELECT
query. Since salary
is the 2nd column (or column index 1), we can rewrite the last line as follows:
The model is read-only by default. To make it read-write, you must subclass it and reimplement setData() and flags(). Another option is to use QSqlTableModel, which provides a read-write model based on a single database table.
The \l{querymodel} example illustrates how to use QSqlQueryModel to display the result of a query. It also shows how to subclass QSqlQueryModel to customize the contents of the data before showing it to the user, and how to create a read-write model based on QSqlQueryModel.
If the database doesn't return the number of selected rows in a query, the model will fetch rows incrementally. See fetchMore() for more information.
Definition at line 20 of file qsqlquerymodel.h.
Creates an empty QSqlQueryModel with the given parent.
Definition at line 120 of file qsqlquerymodel.cpp.
|
virtual |
Destroys the object and frees any allocated resources.
Definition at line 137 of file qsqlquerymodel.cpp.
|
protected |
Definition at line 127 of file qsqlquerymodel.cpp.
|
protected |
Definition at line 243 of file qsqlquerymodel.cpp.
References QAbstractItemModel::beginInsertColumns(), d, and QAbstractTableModel::parent().
Referenced by insertColumns().
|
protected |
Definition at line 207 of file qsqlquerymodel.cpp.
References QAbstractItemModel::beginInsertRows(), d, and QAbstractTableModel::parent().
Referenced by QSqlTableModel::insertRows().
|
protected |
Definition at line 261 of file qsqlquerymodel.cpp.
References QAbstractItemModel::beginRemoveColumns(), d, and QAbstractTableModel::parent().
Referenced by removeColumns().
|
protected |
Definition at line 225 of file qsqlquerymodel.cpp.
References QAbstractItemModel::beginRemoveRows(), d, and QAbstractTableModel::parent().
|
protected |
Definition at line 279 of file qsqlquerymodel.cpp.
References QAbstractItemModel::beginResetModel(), and d.
Referenced by clear(), QSqlRelationalTableModel::clear(), QSqlTableModel::clear(), QSqlTableModel::select(), and setQuery().
|
overridevirtual |
Returns true
if it is possible to read more rows from the database. This only affects databases that don't report back the size of a query (see QSqlDriver::hasFeature()).
parent should always be an invalid QModelIndex.
Reimplemented from QAbstractItemModel.
Definition at line 175 of file qsqlquerymodel.cpp.
References d, and QAbstractTableModel::parent().
Referenced by MyModel::fetchModel().
|
virtual |
Clears the model and releases any acquired resource.
Reimplemented in QSqlRelationalTableModel, and QSqlTableModel.
Definition at line 482 of file qsqlquerymodel.cpp.
References beginResetModel(), d, and endResetModel().
Referenced by QSqlTableModel::clear(), and QQmlTableModel::columns_clear().
|
overridevirtual |
\reimp
Implements QAbstractItemModel.
Definition at line 317 of file qsqlquerymodel.cpp.
References d.
Referenced by QTreeWidgetItem::QTreeWidgetItem(), QTreeWidgetItem::QTreeWidgetItem(), QTreeWidgetItem::QTreeWidgetItem(), QItemSelectionModelPrivate::_q_layoutAboutToBeChanged(), QItemSelectionModelPrivate::_q_layoutChanged(), QConcatenateTablesProxyModelPrivate::_q_slotColumnsAboutToBeInserted(), QConcatenateTablesProxyModelPrivate::_q_slotColumnsAboutToBeRemoved(), QAbstractProxyModelPrivate::_q_sourceModelColumnsAboutToBeInserted(), QAbstractProxyModelPrivate::_q_sourceModelColumnsRemoved(), QTreeViewPrivate::accessibleTable2Index(), QSortFilterProxyModelPrivate::create_mapping(), QItemSelectionModelPrivate::expandSelection(), QSortFilterProxyModelPrivate::find_source_sort_column(), for(), QTreeWidgetItem::insertChild(), QSqlQueryModel_snippets(), QSqlTableModel::selectRow(), setHeaderData(), QSortFilterProxyModelPrivate::source_items_inserted(), and src_gui_itemviews_qstandarditemmodel::wrapper0().
|
overridevirtual |
Returns the value for the specified item and role.
If item is out of bounds or if an error occurred, an invalid QVariant is returned.
Implements QAbstractItemModel.
Reimplemented in QSqlTableModel, and QSqlRelationalTableModel.
Definition at line 331 of file qsqlquerymodel.cpp.
References QModelIndex::column(), d, Qt::DisplayRole, Qt::EditRole, indexInQuery(), item, and QModelIndex::row().
Referenced by QSqlTableModel::data(), QSortedModelEngine::filter(), for(), main(), QSqlQueryModel_snippets(), QItemDelegate::setModelData(), QStyledItemDelegate::setModelData(), QSortedModelEngine::sortOrder(), and QTestPrivate::testDataGuiRoles().
|
protected |
Definition at line 252 of file qsqlquerymodel.cpp.
References d, and QAbstractItemModel::endInsertColumns().
Referenced by insertColumns().
|
protected |
Definition at line 216 of file qsqlquerymodel.cpp.
References d, and QAbstractItemModel::endInsertRows().
Referenced by QSqlTableModel::insertRows().
|
protected |
Definition at line 270 of file qsqlquerymodel.cpp.
References d, and QAbstractItemModel::endRemoveColumns().
Referenced by removeColumns().
|
protected |
Definition at line 234 of file qsqlquerymodel.cpp.
References d, and QAbstractItemModel::endRemoveRows().
Referenced by QTreeWidgetItem::takeChild().
|
protected |
Definition at line 289 of file qsqlquerymodel.cpp.
References d, and QAbstractItemModel::endResetModel().
Referenced by clear(), QSqlRelationalTableModel::clear(), QSqlTableModel::clear(), QSqlTableModel::select(), and setQuery().
|
overridevirtual |
Fetches more rows from a database. This only affects databases that don't report back the size of a query (see QSqlDriver::hasFeature()).
To force fetching of the entire result set, you can use the following:
parent should always be an invalid QModelIndex.
Reimplemented from QAbstractItemModel.
Definition at line 156 of file qsqlquerymodel.cpp.
References d, QAbstractTableModel::parent(), qMax(), and QSQL_PREFETCH.
Referenced by MyModel::fetchModel(), and setQuery().
|
overridevirtual |
Returns the header data for the given role in the section of the header with the specified orientation.
Reimplemented from QAbstractItemModel.
Reimplemented in QSqlTableModel.
Definition at line 359 of file qsqlquerymodel.cpp.
References d, Qt::DisplayRole, Qt::EditRole, QAbstractItemModel::headerData(), and Qt::Horizontal.
Referenced by QSqlTableModel::headerData().
|
protectedvirtual |
Returns the index of the value in the database result set for the given item in the model.
The return value is identical to item if no columns or rows have been inserted, removed, or moved around.
Returns an invalid model index if item is out of bounds or if item does not point to a value in the result set.
Reimplemented in QSqlTableModel.
Definition at line 676 of file qsqlquerymodel.cpp.
References QAbstractItemModel::createIndex(), d, and item.
Referenced by data(), and QSqlTableModel::indexInQuery().
|
override |
Inserts count columns into the model at position column.
The parent parameter must always be an invalid QModelIndex, since the model does not support parent-child relationships.
Returns true
if column is within bounds; otherwise returns false
.
By default, inserted columns are empty. To fill them with data, reimplement data() and handle any inserted column separately:
Definition at line 611 of file qsqlquerymodel.cpp.
References beginInsertColumns(), QAbstractItemModel::count, d, endInsertColumns(), i, QAbstractTableModel::parent(), Q_ASSERT, QSqlField::setGenerated(), and QSqlField::setReadOnly().
QSqlError QSqlQueryModel::lastError | ( | ) | const |
Returns information about the last error that occurred on the database.
Definition at line 541 of file qsqlquerymodel.cpp.
References d.
Referenced by checkSqlQueryModel(), MyModel::fetchModel(), and QSqlTableModel::select().
const QSqlQuery & QSqlQueryModel::query | ( | QT6_DECL_NEW_OVERLOAD | ) | const |
Returns a reference to the const QSqlQuery object associated with this model.
Definition at line 529 of file qsqlquerymodel.cpp.
References d.
|
protectedvirtual |
This virtual function is called whenever the query changes.
The default implementation does nothing.
query() returns the new query.
Definition at line 382 of file qsqlquerymodel.cpp.
Referenced by setQuery().
QSqlRecord QSqlQueryModel::record | ( | ) | const |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.Returns an empty record containing information about the fields of the current query.
If the model is not initialized, an empty record will be returned.
Definition at line 591 of file qsqlquerymodel.cpp.
References d.
Referenced by QSqlTableModel::primaryValues(), QSqlTableModel::record(), QSqlTableModel::record(), QSqlTableModel::removeRows(), QSqlTableModel::setData(), and QSqlTableModel::setRecord().
QSqlRecord QSqlQueryModel::record | ( | int | row | ) | const |
Returns the record containing information about the fields of the current query.
If row is the index of a valid row, the record will be populated with values from that row.
If the model is not initialized, an empty record will be returned.
Definition at line 569 of file qsqlquerymodel.cpp.
References QSqlRecord::count(), QAbstractItemModel::createIndex(), d, Qt::EditRole, i, and QSqlRecord::setValue().
Referenced by QSqlQueryModel_snippets(), QSqlTableModel_snippets(), and sql_intro_snippets().
|
override |
Removes count columns from the model starting from position column.
The parent parameter must always be an invalid QModelIndex, since the model does not support parent-child relationships.
Removing columns effectively hides them. It does not affect the underlying QSqlQuery.
Returns true
if the columns were removed; otherwise returns false
.
Definition at line 646 of file qsqlquerymodel.cpp.
References beginRemoveColumns(), QAbstractItemModel::count, d, endRemoveColumns(), i, and QAbstractTableModel::parent().
|
overridevirtual |
Returns the model's role names.
Qt defines only one role for the QSqlQueryModel:
\table \header
Reimplemented from QAbstractItemModel.
Definition at line 198 of file qsqlquerymodel.cpp.
References Qt::DisplayRole, and QByteArrayLiteral.
|
overridevirtual |
If the database supports returning the size of a query (see QSqlDriver::hasFeature()), the number of rows of the current query is returned. Otherwise, returns the number of rows currently cached on the client.
parent should always be an invalid QModelIndex.
Implements QAbstractItemModel.
Reimplemented in QSqlTableModel.
Definition at line 309 of file qsqlquerymodel.cpp.
References d.
Referenced by QListWidgetItem::QListWidgetItem(), QListWidgetItem::QListWidgetItem(), QListWidgetItem::QListWidgetItem(), QItemSelectionModelPrivate::_q_columnsAboutToBeRemoved(), QItemSelectionModelPrivate::_q_layoutAboutToBeChanged(), QItemSelectionModelPrivate::_q_layoutChanged(), QAbstractProxyModelPrivate::_q_sourceModelRowsAboutToBeInserted(), QAbstractProxyModelPrivate::_q_sourceModelRowsRemoved(), QConcatenateTablesProxyModelPrivate::computeRowsPrior(), QSortFilterProxyModelPrivate::create_mapping(), QItemSelectionModelPrivate::expandSelection(), QUnsortedModelEngine::filter(), QCompletionEngine::filter(), QUnsortedModelEngine::filterOnDemand(), QSortedModelEngine::indexHint(), main(), QAbstractProxyModelPrivate::mapDropCoordinatesToSource(), QSqlQueryModel_snippets(), QSortFilterProxyModelPrivate::recursiveChildAcceptsRow(), QSqlTableModel::rowCount(), QSortedModelEngine::sortOrder(), QSortFilterProxyModelPrivate::source_items_inserted(), QConcatenateTablesProxyModelPrivate::sourceModelForRow(), sql_intro_snippets(), and src_gui_itemviews_qstandarditemmodel::wrapper0().
|
overridevirtual |
Sets the caption for a horizontal header for the specified role to value.
This is useful if the model is used to display data in a view (e.g., QTableView).
Returns true
if orientation is Qt::Horizontal and the section refers to a valid section; otherwise returns false.
Note that this function cannot be used to modify values in the database since the model is read-only.
Reimplemented from QAbstractItemModel.
Definition at line 510 of file qsqlquerymodel.cpp.
References columnCount(), d, emit, QAbstractItemModel::headerDataChanged(), Qt::Horizontal, and qMax().
Referenced by QSqlTableModel_snippets().
Protected function which allows derived classes to set the value of the last error that occurred on the database to error.
Definition at line 553 of file qsqlquerymodel.cpp.
void QSqlQueryModel::setQuery | ( | const QString & | query, |
const QSqlDatabase & | db = QSqlDatabase() |
||
) |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.Executes the query query for the given database connection db.
If no database (or an invalid database) is specified, the default connection is used.
lastError() can be used to retrieve verbose information if there was an error setting the query.
Example:
Definition at line 474 of file qsqlquerymodel.cpp.
References db, and setQuery().
Resets the model and sets the data provider to be the given query.
Note that the query must be active and must not be isForwardOnly().
lastError() can be used to retrieve verbose information if there was an error setting the query.
Definition at line 415 of file qsqlquerymodel.cpp.
References beginResetModel(), QSqlError::ConnectionError, QSqlRecord::count(), QAbstractItemModel::createIndex(), d, endResetModel(), fetchMore(), queryChange(), and QSqlDriver::QuerySize.
Referenced by checkSqlQueryModel(), MyModel::fetchModel(), QSqlQueryModel_snippets(), QSqlTableModel::select(), setQuery(), and sql_intro_snippets().