无法打开sqlite数据库

问题描述:

我有一个简单的应用程序,我正在为我的清单加载一个列表。我这样做是为了学习一点关于Qt的知识,因为它看起来非常整齐。无法打开sqlite数据库

我有几个窗口和一个数据库,所有这些窗口从中提取数据。我得到8个编译错误时,以下内置的例子(尽管他们都对内存数据库)

错误是

undefined reference to `_imp__ZN12QSqlDatabase17defaultConnectionE' 
    undefined reference to `_imp__ZN12QSqlDatabase11addDatabaseERK7QStringS2_' 
    undefined reference to `_imp__ZN12QSqlDatabaseD1Ev' 
    undefined reference to `_imp__ZN12QSqlDatabase15setDatbaseNameERK7QString' 
    undefined reference to `_imp__ZN12QSqlDatabase4openEv' 
    undefined reference to `_imp__ZN12QSqlDatabaseD1Ev' 
    undefined reference to `_imp__ZN12QSqlDatabaseD1Ev' 

    collect2: Id returned 1 exit status 

这里是我的连接头

connection.h

#ifndef CONNECTION_H 
#define CONNECTION_H 

#include <QtSql/QSqlDatabase> 

static bool createConnection() 
{ 
    QSqlDatabase db = QSqlDatabase::addDatabase("QSQLITE"); 
    db.setDatabaseName("C:\\Inventory.db"); 
    if (db.open()) { 
     return true; 
    } 
    return false; 
} 

#endif // CONNECTION_H 

我用connection.h做的唯一的事情是导入到mainwindow.cpp

我还没有找到任何现实世界的例子(不是示例,教程我的意思)的SQLite使用(我没有看到如何在内存中的sqlite数据库是很多人的帮助[虽然我非常新手])

谢谢你的任何帮助,所以

这些被导入到mainwindow.cpp

#include "mainwindow.h" 
#include "ui_mainwindow.h" 

#include <QtGui> 
#include <QtSql/QSqlDatabase> 
#include <QtSql/QSqlTableModel> 

#include "connection.h" 
+0

您确定您已将所有正确的导入库添加到您的项目中吗? – 2011-02-02 05:33:25

+0

我不确定你的意思是没有找到真实的SQLite使用示例 - 就像他们在主页上说的那样,它是[部署最广泛的SQL数据库引擎](http://www.sqlite.org/mostdeployed的.html)。当然,它们可能比内存中的更普遍,但它们仍然是真正的使用。 – Cascabel 2011-02-02 05:43:26

下列文件添加到您的* .pro文件:

QT += sql 

并做一个qmake和构建。