码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • MySql8.0 + Qt 对数据库操作 - 初窥篇1


    一、开发背景

            32 位程序连接 64 位的数据库实例

    二、开发环境

      QtCreator4.8.2 + Qt5.12.2 + MySql8.0.33

    三、实现步骤

      1、测试驱动代码 + 测试结果

    1. int main(int argc, char *argv[])
    2. {
    3. QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
    4. db.setHostName("localhost"); // 可以是本机 localhost 也可以是外网网址
    5. db.setDatabaseName("mysql"); // 数据库名
    6. db.setUserName("root"); // 用户名
    7. db.setPassword("123"); // 用户密码
    8. /* 连接数据库 */
    9. if (!db.open())
    10. {
    11. qDebug() << "Failed to connect to the database:";
    12. qDebug() << db.lastError().text();
    13. return -1;
    14. }
    15. /* 遍历数据库的一个数据表 */
    16. QSqlQuery query;
    17. if (query.exec("SELECT * FROM user"))
    18. {
    19. while (query.next())
    20. {
    21. QString column1 = query.value(0).toString();
    22. QString column2 = query.value(1).toString();
    23. // ...
    24. qDebug() << column1 << column2;
    25. }
    26. }
    27. else
    28. {
    29. qDebug() << "Failed to execute SELECT query:";
    30. qDebug() << query.lastError().text();
    31. }
    32. /* 断开数据库 */
    33. db.close();
    34. return 0;
    35. }

      2、遇到问题

                 "SSL connection error: unknown error number QMYSQL: Unable to connect"

         编译库不支持SSL,需要关闭数据库的 SSL功能 

         解决方法:在数据库的 my.ini 配置文件中的 [mysqld] 后面添加 skip_ssl,即跳过 ssl 功能

         注意:如果更改后出现终端无法登录的问题,重置密码,操作如下

                参考链接:https://www.cnblogs.com/zhurong/p/9898675.html

       (1)修改 my.ini 文件先登录进去。

       (2)ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;   #修改加密规则 

       (3)ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';   #更新一下用户的密码 

       (4)FLUSH PRIVILEGES;   #刷新权限 

       (5)alter user 'root'@'localhost' identified by 'password';

  • 相关阅读:
    【外贸干货】学习外贸销冠的12种思维习惯
    【知识地图】开发测试全栈 (未完待续)
    HTTP请求行详解
    MyBatis-Plus--多租户插件的用法
    听懂未来:AI语音识别技术的进步与实战
    P1807 最长路题解【Floyd】
    鸿鹄工程项目管理系统em Spring Cloud+Spring Boot+前后端分离构建工程项目管理系统
    【杂七杂八】Windows和Linux怎么配置环境变量
    互联网摸鱼日报(2023-10-14)
    Java基础—Node类型的变化
  • 原文地址:https://blog.csdn.net/weixin_49020429/article/details/133638071
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号