• 6955阅读
  • 5回复

qt4不能连接mysql [复制链接]

上一主题 下一主题
离线tuqu
 

只看楼主 倒序阅读 楼主  发表于: 2008-08-24
— 本帖被 XChinux 从 General Qt Programming 移动到本区(2011-01-02) —
vc2003下qt4.3.3开源版,安装了.Visual.Studio.Integration.,mysql服务已启动,mysql编码设为uft-8,程序无法连接数据库,出现以下错误提示:Unknown database 'qt4' QMYSQL: Unable to connect

开始qt4没有编译mysql,出现不能load driver提示,后来用configure命令加入了-qt-sql-mysql,重新namke了,现在出现前面提到的错误提示,不能连接数据库。

请教大虾们,可能什么原因造成的?

代码如下:
  1. #include <QtSql/QtSql>
  2. #include <QApplication>
  3. #include <QMessageBox>
  4. #include "databaseapp.h"
  5. bool createConnection()
  6. {
  7.    
  8.     QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
  9.     db.setHostName("localhost");
  10.     db.setDatabaseName("qt4");
  11.     db.setUserName("root");
  12.     db.setPassword("123");
  13.     bool ok = db.open();
  14.     if (!ok) {
  15.         QMessageBox::critical(0, QObject::tr("Database Error"),
  16.             db.lastError().text());
  17.         return false;
  18.     }
  19.     return true;
  20. }
  21. int databaseapp(int argc, char *argv[])
  22. {
  23.     QApplication app(argc, argv);
  24.     if (!createConnection())
  25.         return 1;
  26.    
  27.     return app.exec();
  28. }
[ 此贴被tuqu在2008-08-25 09:07重新编辑 ]
离线zzh

只看该作者 1楼 发表于: 2008-08-24
-qt-sql-mysql后面还要加上-I mysql头文件路径 -L mysql库路径
离线tuqu

只看该作者 2楼 发表于: 2008-08-24
谢谢!在nmake时出现找不到库文件和头文件的提示,原来要加这些参数。不过我修改了相关的makefile和源文件,给出了库文件和头文件的路径,然后继续nmake,最后似乎成功nmake了。现在出现的问题应该和这个没有关系吧?
离线mumutouv

只看该作者 3楼 发表于: 2008-08-25
你直接在pro文件里面加上

QT += mysql

就可以了
离线tuqu

只看该作者 4楼 发表于: 2008-08-25
谢谢各位!
汗,找到问题了,没用过mysql,我一直以为上面的代码是建立数据库qt4的.
后来按照网上一片文档在mysql命令行建立了数据库qt4,还建了个table,然后程序可以连接数据库了。
请教大虾们,qt4里面没有在mysql上建立数据库的函数吗?
离线hehui

只看该作者 5楼 发表于: 2008-09-04
引用第4楼tuqu于2008-08-25 17:01发表的  :
谢谢各位!
汗,找到问题了,没用过mysql,我一直以为上面的代码是建立数据库qt4的.
后来按照网上一片文档在mysql命令行建立了数据库qt4,还建了个table,然后程序可以连接数据库了。
请教大虾们,qt4里面没有在mysql上建立数据库的函数吗?

连上后直接使用SQL不就可以了?
可先连接test或mysql,再用SQL来Create database!
快速回复
限100 字节
 
上一个 下一个