QSqlError 类
QSqlError 类提供 SQL 数据库错误信息。更多...
头文件 | #include <QSqlError> |
CMake | find_package(Qt6 REQUIRED COMPONENTS Sql) target_link_libraries(mytarget PRIVATE Qt6::Sql) |
qmake | QT += sql |
- 成员列表,包括继承成员
- QSqlError 是数据库类的一部分数据库类。
公共类型
枚举 | ErrorType { NoError, ConnectionError, StatementError, TransactionError, UnknownError } |
公共函数
QSqlError(const QString &driverText = QString(), const QString &databaseText = QString(), QSqlError::ErrorType type = NoError, const QString &code = QString()) | |
QSqlError(const QSqlError &other) | |
QSqlError(QSqlError &&other) | |
~QSqlError() | |
QString | databaseText() const |
QString | driverText() const |
bool | isValid() const |
QString | nativeErrorCode() const |
void | swap(QSqlError &other) |
QString | text() const |
QSqlError::ErrorType | type() const |
bool | operator!=(const QSqlError &other) const |
QSqlError & | operator=(const QSqlError &other) |
QSqlError & | operator=(QSqlError &&other) |
bool | operator==(const QSqlError &other) const |
详细说明
A QSqlError 对象可以提供数据库特定的错误数据,包括 driverText() 和 databaseText() 消息(或两者连接在一起作为 text()),以及 nativeErrorCode() 和 type。
另请参阅QSqlDatabase::lastError() 和 QSqlQuery::lastError。
成员类型文档
enum QSqlError::ErrorType
这个枚举类型描述了错误发生的上下文,例如,连接错误、语句错误等。
常量 | 值 | 描述 |
---|---|---|
QSqlError::NoError | 0 | 没有发生错误。 |
QSqlError::ConnectionError | 1 | 连接错误。 |
QSqlError::StatementError | 2 | SQL 语句语法错误。 |
QSqlError::TransactionError | 3 | 事务失败错误。 |
QSqlError::UnknownError | 4 | 未知错误。 |
成员函数文档
QSqlError::QSqlError(const QString &driverText = QString(), const QString &databaseText = QString(), QSqlError::ErrorType type = NoError, const QString &code = QString())
构建一个包含驱动错误文本 driverText、数据库特定错误文本 databaseText、类型 type 和错误代码 code 的错误。
QSqlError::QSqlError(const QSqlError &other)
创建 other 的副本。
[noexcept]
QSqlError::QSqlError(QSqlError &&other)
移动构造一个QSqlError实例,使其指向与 other 相同的对象。
注意:被移动的对象 other 将处于一个部分形成的状态,其中唯一有效的操作是销毁和分配新值。
[noexcept]
QSqlError::~QSqlError()
销毁对象并释放任何已分配的资源。
QString QSqlError::databaseText() const
返回数据库报告的错误文本。这可能包含特定于数据库的描述;它可能是空的。
另请参阅driverText() 和 text。
QString QSqlError::driverText() const
返回由驱动程序报告的错误文本。这可能包含特定于数据库的描述。它也可能为空。
另请参阅databaseText() 和 text。
bool QSqlError::isValid() const
如果设置了错误,则返回 true
,否则返回 false。
示例
QSqlQueryModel model; model.setQuery("select * from myTable"); if (model.lastError().isValid()) qDebug() << model.lastError();
另请参阅type。
QString QSqlError::nativeErrorCode() const
返回特定于数据库的错误代码,如果无法确定则返回空字符串。
注意:一些驱动程序(如 DB2 或 ODBC)可能会返回多个错误代码。当这种情况发生时,;
用作错误代码之间的分隔符。
[noexcept]
void QSqlError::swap(QSqlError &other)
交换错误 other 与此错误。此操作非常快速且永不失败。
QString QSqlError::text() const
这是一个便捷函数,它返回 databaseText() 和 driverText() 连接成一个字符串。
另请参阅driverText() 和 databaseText。
QSqlError::ErrorType QSqlError::type() const
返回错误类型,或者在无法确定类型时返回 -1。
bool QSqlError::operator!=(const QSqlError &other) const
比较other错误的类型()和本地错误码()与此错误,如果不相等则返回true
。
QSqlError &QSqlError::operator=(const QSqlError &other)
将other错误的值赋予此错误。
[noexcept]
QSqlError &QSqlError::operator=(QSqlError &&other)
将other移动赋值给此QSqlError实例。
注意:被移动的对象 other 将处于一个部分形成的状态,其中唯一有效的操作是销毁和分配新值。
bool QSqlError::operator==(const QSqlError &other) const
© 2024 Qt公司有限公司。本文件的文档贡献者是各自的版权所有者。本提供的文档受GNU自由文档许可证版本1.3的许可,由自由软件基金会发布。Qt及其相关标志是芬兰及其它国家Qt公司有限公司的商标。所有其他商标均为其各自所有者的财产。