error open database QSqlError(“0“, “QODBC3: Unable to connect“, “[Microsoft][ODBC 驱动程序管理器] 在指定的 DSN

最近有个大作业需要使用QT通过ODBC连接MYSQL,按网上配置后一直连接失败,折磨了我几个小时,输出错误提示:

error open database QSqlError(“0”, “QODBC3: Unable to connect”, “[Microsoft][ODBC 驱动程序管理器] 在指定的 DSN 中,驱动程序和应用程序之间的体系结构不匹配”)

后来突然发现我MYSQL下载的是32位,而ODBC是64位,所以出现不匹配情况,然后我下载了一个32位的ODBC,在32位ODBC上再重新创建数据源,终于连接成功!

打印数据库连接失败信息代码如下:

    QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
        db.setHostName("127.0.0.1");
        db.setPort(3306);
        db.setDatabaseName("sqlqt");
        db.setUserName("root");
        db.setPassword("123");
        bool ok = db.open();
        if (ok){
            QMessageBox::information(this, "infor", "success");
        }
        else {
            QMessageBox::information(this, "infor", "open failed");
            qDebug()<<"error open database"<<db.lastError();//这条代码打印错误信息
        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值