QSql Namespace

The QSql namespace contains miscellaneous identifiers used throughout the Qt SQL module. More...

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

Types

enum Location { BeforeFirstRow, AfterLastRow }
enum NumericalPrecisionPolicy { LowPrecisionInt32, LowPrecisionInt64, LowPrecisionDouble, HighPrecision }
flags ParamType
enum ParamTypeFlag { In, Out, InOut, Binary }
enum TableType { Tables, SystemTables, Views, AllTables }

Detailed Description

See also Qt SQL.

Type Documentation

enum QSql::Location

This enum type describes special SQL navigation locations:

ConstantValueDescription
QSql::BeforeFirstRow-1Before the first record.
QSql::AfterLastRow-2After the last record.

See also QSqlQuery::at().

enum QSql::NumericalPrecisionPolicy

Numerical values in a database can have precisions greater than their corresponding C++ types. This enum lists the policies for representing such values in the application.

ConstantValueDescription
QSql::LowPrecisionInt320x01Force 32bit integer values. In case of floating point numbers, the fractional part is silently discarded.
QSql::LowPrecisionInt640x02Force 64bit integer values. In case of floating point numbers, the fractional part is silently discarded.
QSql::LowPrecisionDouble0x04Force double values. This is the default policy.
QSql::HighPrecision0Strings will be used to preserve precision.

Note: The actual behaviour if an overflow occurs is driver specific. The Oracle database just returns an error in this case.

enum QSql::ParamTypeFlag
flags QSql::ParamType

This enum is used to specify the type of a bind parameter.

ConstantValueDescription
QSql::In0x00000001The bind parameter is used to put data into the database.
QSql::Out0x00000002The bind parameter is used to receive data from the database.
QSql::InOutIn | OutThe bind parameter is used to put data into the database; it will be overwritten with output data on executing a query.
QSql::Binary0x00000004This must be OR'd with one of the other flags if you want to indicate that the data being transferred is raw binary data.

The ParamType type is a typedef for QFlags<ParamTypeFlag>. It stores an OR combination of ParamTypeFlag values.

enum QSql::TableType

This enum type describes types of SQL tables.

ConstantValueDescription
QSql::Tables0x01All the tables visible to the user.
QSql::SystemTables0x02Internal tables used by the database.
QSql::Views0x04All the views visible to the user.
QSql::AllTables0xffAll of the above.