尽管QSqlQuery :: exec失败,但没有提供错误描述

时间:2015-04-24 11:46:54

标签: c++ qt

我进入了if块:

if ( !_query.exec( ) )
    {
        QString errdb = _db.driver()->lastError().databaseText();
        QString errdrv = _db.driver()->lastError().driverText();
        //...

但是errdb和errdrv是空的。

还有另一种检查出错的方法吗?

2 个答案:

答案 0 :(得分:2)

您可以使用QSqlQuery::lastError()获取错误,例如_query.lastError()

来自Qt文档的引用:

  

返回有关发生的最后一个错误(如果有)的错误信息   有了这个查询。

答案 1 :(得分:0)

您需要的是_db.lastError().text()