找回密码
 立即注册
收起左侧
楼主: yafeilinux

第22篇 数据库(二)编译MySQL数据库驱动

106
回复
71915
查看
[复制链接]
累计签到:1568 天
连续签到:1 天
2017-4-26 16:29:29 显示全部楼层
beautysun 发表于 2017-4-26 14:40
为什么我按照《Qt Creator快速入门》第3版实验讲义里安Mysql,然后结果是:
failed to connect to root mys ...
我的mysql 也可以创建数据库的啊,
什么意思?
回复 支持 反对

使用道具 举报

累计签到:11 天
连续签到:1 天
2017-4-26 16:40:54 显示全部楼层
会了会了,我没有在命令行里建立自己的数据库
回复 支持 反对

使用道具 举报

累计签到:11 天
连续签到:1 天
2017-4-26 16:44:43 显示全部楼层
没事啦,嘻嘻,是我没有在命令行里创建mydata 这个数据库,然后就直接在qt里 写的这个语句db.setDatabaseName("mydata"); 后来就报错了,我还以为是安装方式出错导致qt 和mysql 连不起来了呢
回复 支持 反对

使用道具 举报

累计签到:11 天
连续签到:1 天
2017-4-26 16:45:23 显示全部楼层

没事啦,嘻嘻,是我没有在命令行里创建mydata 这个数据库,然后就直接在qt里 写的这个语句db.setDatabaseName("mydata"); 后来就报错了,我还以为是安装方式出错导致qt 和mysql 连不起来了呢
回复 支持 反对

使用道具 举报

累计签到:11 天
连续签到:1 天
2017-5-2 10:14:35 显示全部楼层

老师,我在主函数main.cpp 代码里写了一句:
QProcess process;
    process.start("D:/MySQL/bin/mysqld.exe");
可是他还是没有自动运行mysqld.exe  ,需要我手动跑到D盘里去运行,为什么这个代码在我这里不管用呢??(我的路径没有写错呀)
这个程序的第二个问题是,我在发布这个程序时,在F:\watercom2.00\build-watercomfirst-Desktop_Qt_5_6_1_MinGW_32bit-Release  这个目录下运行我的.exe 程序还是不成功,原因是因为他无法连接MySQL数据库,可是我已经把sqldriver的文件复制到这个目录下了,但是在QT Creator 里就可以链接数据库,为什么呢??(只不过在运行之前我要手动打开mysqld.exe )
回复 支持 反对

使用道具 举报

累计签到:1568 天
连续签到:1 天
2017-5-2 11:16:31 显示全部楼层
beautysun 发表于 2017-5-2 10:14
老师,我在主函数main.cpp 代码里写了一句:
QProcess process;
    process.start("D:/MySQL/bin/mysqld ...

你需要把教程中提到的那个复制到bin目录中的文件,复制过来。
回复 支持 反对

使用道具 举报

累计签到:11 天
连续签到:1 天
2017-5-2 11:19:08 显示全部楼层
yafeilinux 发表于 2017-5-2 11:16
你需要把教程中提到的那个复制到bin目录中的文件,复制过来。

我根据提示把他们一个一个复制过来了,然后运行的.exe文件,就只是法连接数据库
回复 支持 反对

使用道具 举报

累计签到:1568 天
连续签到:1 天
2017-5-2 11:23:10 显示全部楼层
beautysun 发表于 2017-5-2 11:19
我根据提示把他们一个一个复制过来了,然后运行的.exe文件,就只是法连接数据库 ...
.我们到C:\MySQL\lib中将libmysql.dll文件复制到C:\Qt\4.8.4\bin中,然后再次运行程序,发现已经成功了,如下图所示。
这个呢?另外,在Qt 5中已经默认有了mysql插件,不需要自己编译的。
回复 支持 反对

使用道具 举报

累计签到:11 天
连续签到:1 天
2017-5-2 11:26:12 显示全部楼层
yafeilinux 发表于 2017-5-2 11:16
你需要把教程中提到的那个复制到bin目录中的文件,复制过来。

我复制了libmysql ,在QT Creator 里运行.pro文件时我可以操作MYSQL 的数据库,增删改查都可以,但是到了release 文件夹下再去运行我的.exe文件,(在这之前我按照提示吧release 发布需要的.dll文件都复制过来了)就无法连接数据库了,不知道为什么,因为我的登录界面是有密码表的,所以都打不开登录界面
回复 支持 反对

使用道具 举报

累计签到:1568 天
连续签到:1 天
2017-5-2 11:34:03 显示全部楼层
beautysun 发表于 2017-5-2 11:26
我复制了libmysql ,在QT Creator 里运行.pro文件时我可以操作MYSQL 的数据库,增删改查都可以,但是到了r ...

这个是以前做的一个项目发布时需要的文件,你的可能不需要这么多,不过可以都复制过来测试下。sqldrivers目录里面是qsqlmysql.dll,platforms目录是qwindows.dll。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

累计签到:11 天
连续签到:1 天
2017-5-2 11:38:24 显示全部楼层
yafeilinux 发表于 2017-5-2 11:23
这个呢?另外,在Qt 5中已经默认有了mysql插件,不需要自己编译的。

刚才网慢,回复的都错乱了,老师见谅啊。您说QT5默认有mysql插件,意思是说我在发布程序时,在released文件夹下,不需要复制sqldriver 这个文件吗?
可是我还是打不开我的软件
回复 支持 反对

使用道具 举报

累计签到:11 天
连续签到:1 天
2017-5-2 11:41:42 显示全部楼层
yafeilinux 发表于 2017-5-2 11:34
这个是以前做的一个项目发布时需要的文件,你的可能不需要这么多,不过可以都复制过来测试下。sqldrivers ...

我复制了sqldrivers 和platforms, 不管用呢
回复 支持 反对

使用道具 举报

累计签到:11 天
连续签到:1 天
2017-5-2 11:46:06 显示全部楼层
yafeilinux 发表于 2017-5-2 11:34
这个是以前做的一个项目发布时需要的文件,你的可能不需要这么多,不过可以都复制过来测试下。sqldrivers ...

老师,好了,好了,我以为是把libmysql 放到MYSQL的bin 目录下就可以了,现在我把它也复制到release里就可以了,可以了,太感谢老师了,太感谢老师了
回复 支持 反对

使用道具 举报

累计签到:11 天
连续签到:1 天
2017-5-2 12:03:16 显示全部楼层
yafeilinux 发表于 2017-5-2 11:34
这个是以前做的一个项目发布时需要的文件,你的可能不需要这么多,不过可以都复制过来测试下。sqldrivers ...

老师,在我的电脑里release 版本是可以运行了,可是放到没有MySQLde数据库的电脑里就是不行啊,难道要给别人的电脑也安装一个数据库吗?然后把process.start里的参数写上它的数据库路径。
感觉我要是这样干的话,我们同学和老师就不愿意用我的软件了。
老师先好好吃饭,午休,下午有时间再回答我问题就好,谢谢老师了
回复 支持 反对

使用道具 举报

累计签到:1568 天
连续签到:1 天
2017-5-7 21:02:33 显示全部楼层
beautysun 发表于 2017-5-2 12:03
老师,在我的电脑里release 版本是可以运行了,可是放到没有MySQLde数据库的电脑里就是不行啊,难道要给 ...

如果你用mysql,而且不是连接远程服务器的数据库,那么只能在运行的电脑上安装mysql才能运行。如果不想安装,就使用sqlite数据库。
回复 支持 反对

使用道具 举报

累计签到:11 天
连续签到:1 天
2017-5-21 11:49:33 显示全部楼层
恩,后来我用了sqlite 的数据库,谢谢老师
回复 支持 反对

使用道具 举报

累计签到:11 天
连续签到:1 天
2017-5-21 11:50:45 显示全部楼层
yafeilinux 发表于 2017-5-7 21:02
如果你用mysql,而且不是连接远程服务器的数据库,那么只能在运行的电脑上安装mysql才能运行。如果不想安 ...

谢谢老师,我知道了,现在用的是sqlite,也很好用
回复 支持 反对

使用道具 举报

累计签到:29 天
连续签到:1 天
2017-8-7 11:12:13 显示全部楼层
亚飞老师,我运行程序的时候出现错误,我用的系统的win8.1专业版,QT5.8 ,Qt Creator 4.2.1 (Community)编译器,到C:\MySQL\lib中将libmysql.dll文件复制到C:\Qt\Qt5.8.0\5.8\mingw53_32\bin中这一步骤发现里面没有mingw53_32文件夹,我就把dll文件拷贝到这里了C:\Qt\Qt5.8.0\5.8\msvc2015_64\bin,请问一下这个问题要怎么解决?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

累计签到:1568 天
连续签到:1 天
2017-8-7 23:25:52 显示全部楼层
月羽 发表于 2017-8-7 11:12
亚飞老师,我运行程序的时候出现错误,我用的系统的win8.1专业版,QT5.8 ,Qt Creator 4.2.1 (Community)编 ...

msvc2015_64你用的是vc版本的?建议先换操作系统,然后重装mingw版本的Qt,这样做咱们的教程会很顺畅。
回复 支持 反对

使用道具 举报

累计签到:29 天
连续签到:1 天
2017-8-8 08:18:37 显示全部楼层
yafeilinux 发表于 2017-8-7 23:25
msvc2015_64你用的是vc版本的?建议先换操作系统,然后重装mingw版本的Qt,这样做咱们的教程会很顺畅。 ...

请问一下老师msvc2015_64版本的编译器跟mingw版本的编译器有什么区别?是不是两个不同版本编译器编译后的程序会有一定的局限性?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了