QSqlRelation Class | Qt SQL | Qt 6.10.3
Description: The QSqlRelation class stores information about an SQL foreign key.

- Qt 6.10
- Qt SQL
- C++ Classes
- QSqlRelation
- Qt 6.10.3 Reference Documentation

# QSqlRelation Class

The QSqlRelation class stores information about an SQL foreign key. More...

Header: | `#include <QSqlRelation>`
CMake: | `find_package(Qt6 REQUIRED COMPONENTS Sql)` `target_link_libraries(mytarget PRIVATE Qt6::Sql)`
qmake: | `QT += sql`

- List of all members, including inherited members

## Public Functions

| QSqlRelation()
| QSqlRelation(const QString &tableName, const QString &indexColumn, const QString &displayColumn)
QString | displayColumn() const
QString | indexColumn() const
bool | isValid() const
void | swap(QSqlRelation &other)
QString | tableName() const

## Detailed Description

QSqlRelation is a helper class for QSqlRelationalTableModel. See QSqlRelationalTableModel::setRelation() and QSqlRelationalTableModel::relation() for details.

See also QSqlRelationalTableModel, QSqlRelationalDelegate, and Relational Table Model Example.

## Member Function Documentation

### QSqlRelation::QSqlRelation()

Constructs an invalid QSqlRelation object.

For such an object, the tableName(), indexColumn(), and displayColumn() functions return an empty string.

See also isValid().

### QSqlRelation::QSqlRelation(const QString &tableName, const QString &indexColumn, const QString &displayColumn)

Constructs a QSqlRelation object, where tableName is the SQL table name to which a foreign key refers, indexColumn is the foreign key, and displayColumn is the field that should be presented to the user.

See also tableName(), indexColumn(), and displayColumn().

### QString QSqlRelation::displayColumn() const

Returns the column from table tableName() that should be presented to the user instead of a foreign key.

### QString QSqlRelation::indexColumn() const

Returns the index column from table tableName() to which a foreign key refers.

### `[noexcept]` bool QSqlRelation::isValid() const

Returns `true` if the QSqlRelation object is valid; otherwise returns `false`.

### `[noexcept]` void QSqlRelation::swap(QSqlRelation &other)

Swaps this relation with other. This operation is very fast and never fails.

### QString QSqlRelation::tableName() const

Returns the name of the table to which a foreign key refers.