首页 > 数据库 >简单测试qt通过odbc方式连接mysql8数据库

简单测试qt通过odbc方式连接mysql8数据库

时间:2023-01-07 17:33:19浏览次数:70  
标签:8.0 qt mysql8 odbc db dsn mysql root append


  1. 下载数据库mysql8.0.27, SQLyog,mysql-connector-odbc
    强烈推荐从镜像下载
    mysql-connector-odbc-8.0.27-winx64.msi
    ​​​ https://mirrors.tuna.tsinghua.edu.cn/mysql/downloads/Connector-ODBC/8.0/​

mysql-8.0.27-winx64.msi
​​​ https://mirrors.tuna.tsinghua.edu.cn/mysql/downloads/MySQL-8.0/​​​ SQLyog,
https://github.com/webyog/sqlyog-community/wiki/Downloads
安装



以下命令通过cmd管理员方式
@1 ​​​mysqld -install​​​ @2 ​​mysqld --initialize --console​​ *需要记得最后产后的密码 A temporary password is generated for root@localhost:

@3 ​​net start mysql​​​ @4 ​​mysql -u root -p​​ 输入密码
@5 ​​alter user user() identified by "123456"​​ 修改密码
Or alter user ‘root’@‘localhost’ identified with mysql_native_password by ‘123456’;


配置完成之后可以新建自己的数据库
在qt中连接

QString dsn = "Driver={MySQL ODBC 8.0 UniCode Driver};"; // Driver is now {MySQL}
dsn.append("Server=127.0.0.1,3306;"); // IP,Port
dsn.append("Database=db_mt;"); //
dsn.append("Uid=root;"); // User
dsn.append("Pwd=123456;");
dsn.append("MULTI_HOST=1;");

QSqlDatabase db=QSqlDatabase::addDatabase("QODBC");
db.setDatabaseName(dsn);
if(db.open()){
qDebug()<<"success open ";


db.close();
}else {
qDebug()<<"open failed";
}


也可以在管理工具中设置



QSqlDatabase db=QSqlDatabase::addDatabase("QODBC");
db.setPort(3306);
db.setDatabaseName("MTTEST");
db.setUserName("root");
db.setPassword("123456");
if(db.open()){
qDebug()<<"success open ";

db.close();
}else {
qDebug()<<"open failed";
}

简单测试qt通过odbc方式连接mysql8数据库_qt


标签:8.0,qt,mysql8,odbc,db,dsn,mysql,root,append
From: https://blog.51cto.com/u_15932543/5995692

相关文章

  • Qt中用thrift验证flume
    一.flume简介flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统。在flume中分为了3个组件,分别为source,channel和sink。Source是负责接收......
  • ubunut安装qtcreater
    安装gcc1kxb@kxb:~$gcc-v23Command'gcc'notfound,butcanbeinstalledwith:45sudoaptinstallgcc67kxb@kxb:~$sudoaptinstall......
  • QT信号与槽使用自定义数据类型的参数引发的问题
    1.发现问题今天使用信号与槽遇到一个这样的问题,我自定义了一个信号类型:signals:voidupdate_product_info(int,ProductInfoSign);ProductInfoSign的定......
  • MySQL8 - DISTINCT 去重
    DISTINCT-去重查询结果去除重复记录,原表数据不修改SELECT DISTINCTjobFROM emp;DISTINCT只能出现在所有字段的最前方,如果使用在两字段间,则字段的记录数量相互......
  • Qt音视频开发10-ffmpeg内核硬解码
    一、前言为了极大的降低CPU的占用,实现硬解码(也叫硬件加速)非常有必要,一个视频文件或者一路视频流还好,如果增加到64路视频流呢,如果是4K、8K这种高分辨率的视频呢,必须安装上......
  • mysql8.0设置binlog保存时间,并清除过期日志释放空间
    在线修改mysql>showvariableslike'%expire%';+--------------------------------+---------+|Variable_name|Value|+-------------------------......
  • Qt中使用c#和std的mutex出现冲突
    本人想在Qt项目中使用c#的一些功能,Qt代码中原本用的std::mutex。pro文件添加上托管编译后,一编译就报错:std里面没有mutex.一开始以为是std冲突,但是怎么改都没用,包括修改头......
  • QT基础——核心模块QtCore
    qtcore提供了元对象系统,扩展了c++在元对象系统的基础上,qt又提供了信号/槽、property以及对象树等特性TheMeta-ObjectSystemThePropertySystemObjectModelObje......
  • QT基础——QML及其相关的qt模块
    QML语言(qt6)https://doc.qt.io/qt-6/qmlreference.html以qt6版本说明,其他b版本不一定对的上基础语法主要是三个方面:import关键字,对象的声明(子对象),注释importQtQuick......
  • sqlite3的使用,包括连接qt
    一、sqlite比较轻量级数据库二、类型:关系型数据库三、linux系统一般自带四、创建数据库1、在你要创建的数据的文件夹下打开cmd2、执行:sqlite3testBase.db ......