0


QT连接数据库

     QT连mysql数据库,大家装的数据库普遍都是8.0的版本,64位的,这里直接用QMYSQL连接,发现缺少驱动,而且我们用的Qt creater是32位,所以这里选择另一种方式去链接数据库通过QODBC(开放数据库连接),如果你们用的64的mingw,或者是msvc_2013,64位的,那么就可以不用这个方法,直接连就可以了

首先,在自己的数据库中找到这2个文件

放在目录下

点击控制面板找到这个图标

随后点击ODBC Data Sources (32-bit)

配置

点击Test可以出现下窗口则连接成功

            ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ​​​​​​​        ![](https://img-blog.csdnimg.cn/3f42309583af47e199db6675a6a27570.png)

下面进行代码检测

QSqlDatabase db = QSqlDatabase::addDatabase("QODBC");
db.setDatabaseName("test");
if(!db.open()){
    qDebug()<<"打开失败";
}else{
    qDebug()<<"打开成功";
}
QSqlQuery query(db);
//关联数据库
query.exec("select * from teacher"); //执行语句用的
while(query.next()) {
       qDebug()<<query.value(0).toString()<<" "
                <<query.value(1).toString()<<" "
                <<query.value(2).toString();
}

效果如下

如果是msvc 64位,或者是migw64的

QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL"); 
db.setHostName("127.0.0.1"); 
db.setPort(3306);//是mysql服务器的端口号 
db.setDatabaseName("test"); 
db.setUserName("root"); 
db.setPassword("123456"); 
if (!db.open()) { 
    qDebug() << QString::fromLocal8Bit("打开失败"); 
    return 0; 
} 
else{ 
    qDebug() << QString::fromLocal8Bit("打开成功"); 
} 
QSqlQuery query(db); //关联数据库 
query.exec("select * from 。。。。;"); //使用查询语句
while (query.next()) { 
    /*
    对查询结果进行输出
    */
}

小结:

    里面的本机信号和之后的127.0.0.1之后会在网络编程篇章继续详解原因,有了数据库的帮助之后可以更好的处理许多问题。

本文转载自: https://blog.csdn.net/qq_54395977/article/details/122738761
版权归原作者 small建攻 所有, 如有侵权,请联系我们删除。

“QT连接数据库”的评论:

还没有评论