Class: QgsDatabaseSchemaModel

class qgis.core.QgsDatabaseSchemaModel

Bases: PyQt5.QtCore.QAbstractItemModel

A model containing schemas from a database connection.

This class does not automatically subscribe to database updates. Schemas are queried from the database initially upon model construction. In order to update the listed schemas, QgsDatabaseSchemaModel.refresh() must be manually called.

New in version 3.14.

QgsDatabaseSchemaModel(provider: str, connection: str, parent: QObject = None) Constructor for QgsDatabaseSchemaModel, for the specified provider and connection name.

Warning

The provider must support the connection API methods in its QgsProviderMetadata implementation in order for the model to work correctly.

QgsDatabaseSchemaModel(connection: QgsAbstractDatabaseProviderConnection, parent: QObject = None) Constructor for QgsDatabaseSchemaModel, for the specified connection.

Ownership of connection is transferred to the model.

Enums

CustomRole

Bases: enum.IntEnum

Role

alias of CustomRole

Methods

allowEmptySchema

Returns True if the model allows the empty schema ("not set") choice.

beginInsertColumns

beginInsertRows

beginMoveColumns

beginMoveRows

beginRemoveColumns

beginRemoveRows

beginResetModel

changePersistentIndex

changePersistentIndexList

childEvent

columnCount

param parent:

connectNotify

createIndex

customEvent

data

param index:

decodeData

disconnectNotify

encodeData

endInsertColumns

endInsertRows

endMoveColumns

endMoveRows

endRemoveColumns

endRemoveRows

endResetModel

index

param row:

isSignalConnected

parent

param child:

persistentIndexList

receivers

refresh

Refreshes the schema list by querying the underlying connection.

resetInternalData

rowCount

param parent:

sender

senderSignalIndex

setAllowEmptySchema

Sets whether an optional empty schema ("not set") option is present in the model.

timerEvent

class CustomRole(value)

Bases: enum.IntEnum

Custom model roles.

Note

Prior to QGIS 3.36 this was available as QgsDatabaseSchemaModel.Role

New in version 3.36.

  • RoleEmpty: Entry is an empty entry

baseClass

alias of QgsDatabaseSchemaModel

Role

alias of CustomRole

allowEmptySchema(self) bool

Returns True if the model allows the empty schema (“not set”) choice.

Return type:

bool

beginInsertColumns(self, QModelIndex, int, int)
beginInsertRows(self, QModelIndex, int, int)
beginMoveColumns(self, QModelIndex, int, int, QModelIndex, int) bool
beginMoveRows(self, QModelIndex, int, int, QModelIndex, int) bool
beginRemoveColumns(self, QModelIndex, int, int)
beginRemoveRows(self, QModelIndex, int, int)
beginResetModel(self)
changePersistentIndex(self, QModelIndex, QModelIndex)
changePersistentIndexList(self, Iterable[QModelIndex], Iterable[QModelIndex])
childEvent(self, QChildEvent)
columnCount(self, parent: QModelIndex = QModelIndex()) int
Parameters:

parent (QModelIndex = QModelIndex()) –

Return type:

int

connectNotify(self, QMetaMethod)
createIndex(self, int, int, object: object = 0) QModelIndex
customEvent(self, QEvent)
data(self, index: QModelIndex, role: int = Qt.DisplayRole) Any
Parameters:
  • index (QModelIndex) –

  • role (int = Qt.DisplayRole) –

Return type:

Any

decodeData(self, int, int, QModelIndex, QDataStream) bool
disconnectNotify(self, QMetaMethod)
encodeData(self, Iterable[QModelIndex], QDataStream)
endInsertColumns(self)
endInsertRows(self)
endMoveColumns(self)
endMoveRows(self)
endRemoveColumns(self)
endRemoveRows(self)
endResetModel(self)
index(self, row: int, column: int, parent: QModelIndex) QModelIndex
Parameters:
  • row (int) –

  • column (int) –

  • parent (QModelIndex) –

Return type:

QModelIndex

isSignalConnected(self, QMetaMethod) bool
parent(self, child: QModelIndex) QModelIndex
Parameters:

child (QModelIndex) –

Return type:

QModelIndex

persistentIndexList(self) List[QModelIndex]
receivers(self, PYQT_SIGNAL) int
refresh(self)

Refreshes the schema list by querying the underlying connection.

resetInternalData(self)
rowCount(self, parent: QModelIndex = QModelIndex()) int
Parameters:

parent (QModelIndex = QModelIndex()) –

Return type:

int

sender(self) QObject
senderSignalIndex(self) int
setAllowEmptySchema(self, allowEmpty: bool)

Sets whether an optional empty schema (“not set”) option is present in the model.

Parameters:

allowEmpty (bool) –

timerEvent(self, QTimerEvent)