0

我无法理解我在这里做错了什么。我使用的是 Qt 5.7.1,代码如下:

    QString filePath = QCoreApplication::applicationDirPath();
    QString dbPath = QDir(filePath).absoluteFilePath("../../../Database");

    m_db = QSqlDatabase::addDatabase("QSQLITE", "user_connection");
    m_db.setDatabaseName(dbPath + "/Sensor_Objects.db");

    qDebug() << filePath << " & " << dbPath;

    if (!m_db.open())
       qDebug() << "Database Error: " + m_db.lastError().text();
    else
    {
       qDebug() << "Database: connection ok";
        createDatabase("Sensor_Objects");
        m_db.close();
    }

qDebug() 正在正确打印目录的路径,但 m_db.open() 失败并出现错误“数据库错误:内存不足错误打开数据库”。

4

1 回答 1

0

可能重点是dbpath,试试

m_db.setDatabaseName(dbPath.toLatin1() + "/Sensor_Objects.db");
于 2018-02-28T09:22:11.643 回答