• 6942阅读
  • 9回复

连接MySQL的问题:编译好驱动了 连接不上 [复制链接]

上一主题 下一主题
离线troy
 
只看楼主 倒序阅读 楼主  发表于: 2009-05-07
— 本帖被 XChinux 从 General Qt Programming 移动到本区(2011-01-02) —
#include <QApplication>
#include <QtSql>
#include <QLabel>

bool createConnection() {
    QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
   
    db.setHostName("localhost");
    db.setDatabaseName("test");
    db.setUserName("root");
    db.setPassword("123");
    db.setPort(3306);

    qDebug() << db.port();
    if (!db.open()) {
        return false;
    }
   
    db.close();
   
    return true;
}

int main(int argc, char *argv[]) {
    QApplication app(argc, argv);
   
    QLabel *label = new QLabel;
    label->setWindowTitle("Qt Database");
   
    if(createConnection()) {
        label->setText("<h1>Connected to database!</h1>");
    }
    else {
        label->setText("<h1>Connection fail!</h1>");
    }
   
    label->show();
   
    return app.exec();
}
   qDebug() << db.port(); 打印出来的结果如下:
QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QMYSQL3 QMYSQL QODBC3 QODBC
-1
很奇怪啊 明明有QMYSQL的驱动的


离线troy
只看该作者 1楼 发表于: 2009-05-08
没人知道什么原因么
离线troy
只看该作者 2楼 发表于: 2009-05-08
谁来帮助回答一下呢 我明明是有这个驱动的啊
离线sw15118
只看该作者 3楼 发表于: 2009-06-15
看看你的mysql驱动是否拷到<qt安装路径>\qt\plugins\sqldrivers下了。
离线mxw5495
只看该作者 4楼 发表于: 2009-06-24
我也是编译通过了但是连接不上,lz的问题解决了么?
离线huangdi_1
只看该作者 5楼 发表于: 2009-06-29
看看你的mysql驱动是否拷到<qt安装路径>\qt\plugins\sqldrivers下了.   编译的mysql驱动也就是两个文件
离线hzf.luck
只看该作者 6楼 发表于: 2009-09-27
我的已经拷贝到你说的那个目录,但是还是提示找不到驱动,无奈中,都不想再看qt了,这个驱动很烦人
离线dbzhang800

只看该作者 7楼 发表于: 2009-09-27
放到

<程序所在目录>\sqldrivers

下试试呢?
离线hiti_tony
只看该作者 8楼 发表于: 2009-09-28
用odbc试试
QSqlDatabase db = QSqlDatabase::addDatabase("QODBC", "dbTemp");
..
QString dsn = QString::fromLocal8Bit("Driver={mysql};database=yourdatabase;uid=username;pwd=yourpassword;option=16386;");
db.setDatabaseName(dsn);
..
离线foxyz

只看该作者 9楼 发表于: 2009-09-28
请问,你是哪个OS?
快速回复
限100 字节
 
上一个 下一个