连接到MySql时Qt Creator _IMP错误

时间:2014-06-16 12:59:58

标签: c++ mysql xampp qt-creator

我正在尝试通过 XAMPP 创建一个连接到本地MySql 的应用,并将数据输出到tableWidget中。

在为它写完所有代码并纠正所有错误后,我得到17个关于“未定义引用`_imp__ZN .....'”的错误

第1个问题:我是否必须像使用PHP一样将所有项目文件放在XAMPP / htdocs中?

第二个问题:我只在main.cpp中写了一些内容,我是否错过了其他类的内容,或者我在头文件中需要其他内容?

我听说“ imp _ ”问题与编译器有关,但我不知道该怎么做!

不用多说,这是我的 main.cpp

#include "mainwindow.h"
#include <QApplication>
#include <QtSql/QSql>
#include <QtGui/QtGui>
#include <QMessageBox>
#include <QtSql/QSqlDatabase>
#include <QTableWidget>
#include <QtSql/QSqlError>

int main(int argc, char *argv[])

{
QApplication a(argc, argv);
QTableWidget* tableWidget = new QTableWidget();
tableWidget->setWindowTitle("Connect to Mysql Database");
QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
db.setHostName("localhost");
db.setDatabaseName("pizzeria mabo");
db.setUserName("root");
db.setPassword("");

if (!db.open())
{
    QSqlError err = db.lastError();
    QMessageBox::critical(0, QObject::tr("Database Error"), err.text());
}


MainWindow w;
w.show();

return a.exec();
}

这是我的错误

http://i57.tinypic.com/nodow7.png

感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

嗯,错误意味着您缺少包含必要符号的库。如果您使用qmake构建项目,则必须通过“QT + = sql”启用SQL。否则,您必须手动查找并添加库。