Qt5.5.1使用MySQL之艰难历程

来源:互联网 发布:如何更改淘宝会员名 编辑:程序博客网 时间:2024/04/30 22:41

刚开始学习Qt,正好看见一个使用数据库的例子便想尝试一下,于是便安装了MySQL5.7.17,一切就绪后便按照书上的例子写了如下的代码:

    db = QSqlDatabase::addDatabase("QMYSQL");
    db.setHostName("localhost");
    db.setUserName("root");
    db.setPassword("520520zp");
    db.setDatabaseName("student");
    if(!db.open())
    {
        QMessageBox::critical(0,tr("DataBase Error"),db.lastError().text());
    }
    else
    {
        QMessageBox::warning(0,tr("DataBase Error"),tr("Open Success!"));
    }

编译调试后一直显示,无法加载QMYSQL驱动,便上网查询了相关资料,找到一篇较好的博客,推荐给大家:http://blog.csdn.net/qq_35148419/article/details/53769027。

按照该博客的步骤操作后,发现了一个问题,执行mingw32-make命令后一直报错,显示C:\Program:No such a file or direction。这才发现MySQL的安装路径不能存在空格,否则这一步就无法通过。于是我就开始卸载MySQL再重新安装。

重新安装时又遇到了问题,在start service这一步配置过程一直无法进行下去,于是又查询资料,发现原因是之前卸载时没有删除干净。这里也推荐一个靠谱的博客:http://blog.csdn.net/yuan7032/article/details/7493910。关于其中的第6点,我的文件路径是C:\ProgramData\MySQL,而且该文件还是隐藏文件,更加不容易发现。

OK,一切就绪后又开始重新安装MySQL5.7.17,这一次安装没有问题,但是发现这个版本的数据库无法改变安装路径,默认在C:\Program Files下面。这时,我感到了绝望。。。。。

从一开始捣鼓这个数据库,到现在已经快一天。这时,我便想到试试低版本的MySQL,于是下载了MySQL5.0.87,这个终于可以选择安装路径。安装完成后一切正常,准备按照第一个博客里面提供的方法去编译出数据库驱动,这时发现这个低版本的数据库安装路径下竟然没有Include和lib这两个文件夹。我只好放弃自己编译驱动的方法,因为Qt软件本身自带了一些MySQL的驱动,便运行Qt程序尝试一下,还是无法加载驱动,看来自带的驱动不对。

我翻看着各种博客,依然无果,就去官网上下载了一个低版本的数据库,因为之前5.0.87不是在官网上下载的,怀疑会有问题,所以就想着在官网上下载一个,说不定会有lnclude和lib文件夹,于是便下载了一个MySQL5.0.45,安装好后依然没有找到那两个文件夹,抱着试试看的心理又试着运行一下Qt程序,这时候奇迹出现了,竟然连接上了数据库,看来Qt软件中自带的驱动程序和这个版本的数据库匹配上了!!!


原创粉丝点击