QT (WINDowsXP)MSQL 配置故障全略

最经在测试一个项目时用到MYSQL 数据库 ,QT下如何使用MYSQL ,网上搜一遍 ,回答各异,群里问一遍,结果回答的都是皮毛 ,不能解决问题,现在自己的故障重现,让后来者免遭炼狱之苦.

1,项目:我的项目是QT4.5开发的,使用MYSQL 数据库.

2,环境: 我的开发环境是:WINDOWS XP SP2   我的QT工具 是QT5.7 最新  调试minGW 编辑器 QT CREATOR 4.4,没有使用VS版的 网上说QT5.7  不支持XP 但是测试结果不是这样,官网也没有查到5.7配套XP 的版本 但是实际使用minGW,完全可以在XP下工作 没有任何问题.

 2升级:刚才说了,那个醒目是QT4.5工程 需要在QT5.7里打开 重新配置不过这个没有多少难度,可以看以前的博文 QT升级.

 升级后软件启动提示:

 3按照有关说明 说是没有MYSQL数据库驱动 于是到

D:\Qt\Qt5.7.0\5.7\mingw53_32\plugins\sqldrivers (这是我的QT安装目录 个人有异)

明显看到自己目录下有MYSQL 驱动插件

但就是不能连接 ,其实MYSQL属于第三方服务 本身没有在QT包含 这里只是提供一个连接接口,既然这样说明我们还需要第三方软件MYSQL

于是到网站下载,MYSQL5.7 越新越好,结果测试还是不能连接

  

#include <QCoreApplication>

#include <QtSql/QSql>

#include <QSql>

#include <QSqlDatabase>

#include <QSqlQuery>

#include <QDebug>

#include <QVariant>

#include <QWidget>

#include <QMessageBox>

#include <QSqlError>

int main(int argc, char *argv[])

{

QCoreApplication a(argc, argv);

// QSqlDatabase db= QSqlDatabase::addDatabase("QMYSQL");//QSQLITE

// db.setDatabaseName(":memory:");

//if(!db.open())

// {

//   return false;

//}

/*

QSqlQuery   query;

query.exec("create table student(id int primary key,name varchar)");

query.exec("insert into student value(‘1,xiaogang‘)");

query.exec("insert into student value(‘2,wangwu‘)");

query.exec("insert into student value(‘3,lisi‘)");

query.exec("slect id name from student where id>2 ");

while(query.next())

{

int ele0=query.value(0).toInt();

QString ele1=query.value(1).toString();

qDebug() << ele0 << ele1 ;

}

*/

/*

QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");

db.setHostName("127.0.0.1");

db.setDatabaseName("testsql");

db.setUserName("root");

db.setPassword("root");

bool ok = db.open();

qDebug() << ok;

hostname=localhost

database=bpmstest

username=root

password=123456

*/

QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");

db.setHostName("127.0.0.1");//localhost

db.setPort(3306);

db.setDatabaseName("testsql");

db.setUserName("root");

db.setPassword("123456");

bool ok = db.open();//寤虹珛鏁版嵁搴撹繛鎺?

if(!ok)

{

// QMessageBox::critical(0,QObject::tr("杩炴帴鏁版嵁搴撳け璐ワ紒锛侊紒"),db.lastError().text());

qDebug() << ok;

// return false;

}

else

{

//QMessageBox::information(0,QObject::tr("Tips"),QObject::tr("杩炴帴鏁版嵁搴撴垚鍔燂紒锛侊紒"));

qDebug() << ok<<123;

return true;

}

//鐪嬩笅  鎻愮ず浠涔堜俊鎭?锛?

return a.exec();

}

看来必须安装MYSQL  于是 下载安装MYSQL 装好后 结果不知道那个是MYSQL启动项

4这样在自己的环境中就有了MYSQL 数据库 

然后启动自己的软件

时间: 2024-11-08 22:34:56

QT (WINDowsXP)MSQL 配置故障全略的相关文章

深入理解MongoDB(一)Linux下配置MongoDB全攻略

一 MongoDB简介 MongoDB是一个高性能,开源,无模式的文档型数据库,是当前NoSql数据库中比较热门的一种.它在许多场景下可用于替代传统的关系型数据库或键/值存储方式,Mongo使用C++开发.Mongo的官方网站地址是:http://www.mongodb.org/,读者可以在此获得更详细的信息. 特点: 它的特点是高性能.易部署.易使用,存储数据非常方便.主要功能特性有: 面向集合存储,易存储对象类型的数据. 模式自由. 支持动态查询. 支持完全索引,包含内部对象. 支持查询.

JDK - Tomcat - Eclipse - JSP - Servlet 配置运行全攻略

花了将近两个月的时间,从 JDK 开始一步一步摸索,历经千辛万苦,终于让第一个 Servlet 运行起来了,创建第一个 Servlet  程序确实要比创建第一个 Asp.net 程序困难多了,但是不要紧,趁着我还没忘先记下来,下回你再来的时候就轻松多了! 1.下载并安装JDK5.0 或者 JDK1.4.2 不要对版本号产生什么疑问,据我的理解,JDK5.0 也就是JDK1.5 ,是 JDK1.4.2 的重要升级,里面加了许多新的语言特性,为什么叫 5.0 而不叫1.5 ,我想可能是出于商业上的考

QT Creator 代码自动补全

QT Creator 代码自动补全 用QT Creater编程,如果没有自动补全是很痛苦的事情,于是便查阅了QT的文档,发现CTRL+SPACE是自 动补全的快捷键;但是在 Creater里使用居然没有效果,估计是输入法切换的冲突(CTRL+SPACE是我中英文输入的默认快捷 键)于是寻求解决方法,在QT Creater->Tools->Options... 里找到environment->Keyboard,发现 TextEditor.CompleteThis命令,其快捷键是Ctrl+S

MRPT在 QT creater中配置

1. 下载mrpt https://github.com/jlblancoc/mrpt ps: qt creator 下配置   直接第三步 2. 编译mrpt 查看编译教程:  http://www.mrpt.org/Building_and_Installing_Instructions 2.1 装好依赖库 $ sudo apt-get install build-essential pkg-config cmake libwxgtk2.8-dev libftdi-dev freeglut3

【Qt编程】自动补全功能

最近写了一个查单词的类似有道词典的软件,里面就有一个自动补全功能(即当你输入一个字母时,就会出现几个候选项).这个自动补全功能十分常见,百度搜索关键词时就会出现.不过它们这些补全功能都是与你输入的进行首字匹配,有时也会不方便.例如,如果我输入一个"好",如果是首字匹配的话会出现下图: 如果是句中匹配的话,则是这种情况: 你可以根据自己的要求进行选择哪一种模式. Qt中自带QCompleter类来实现上面的自动补全功能,读者可以在Qt自带的demo中很容易的学会该类的使用.下面我要讲的是

从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群)

从0开始搭建SQL Server AlwaysOn 第二篇(配置故障转移集群) 第一篇http://www.cnblogs.com/lyhabc/p/4678330.html 第二篇http://www.cnblogs.com/lyhabc/p/4682028.html 这一篇是从0开始搭建SQL Server AlwaysOn 的第二篇,主要讲述如何搭建故障转移集群,因为AlwaysOn是基于Windows的故障转移集群的 在讲解步骤之前需要了解一下故障转移集群仲裁配置 下面图片来自<Wind

Qt Creator的安装与Qt交叉编译的配置

Qt Creator 的安装 到Qt官网下载Qt Creator  https://www.qt.io/download-open-source/ 其它旧版本点击Achieve连接下载 或登录http://download.qt.io/下载 下载前记得查看自己的linux系统情况 uname-a 我的是 1. i386 适用于intel和AMD所有32位的cpu.以及via采用X86架构的32位的cpu. 2. X86_64 适用于intel的Core 2 Duo, Centrino Core

QT win 安装配置

QT windows 版安装配置 安装包:链接:https://pan.baidu.com/s/1LCj2V3xQ1wB9_7zmE5tV6Q 密码:bn9r 首先安装QT Creator 双击安装文件("qt-creator-windows-opensource-2.8.0.exe") 源码的安装 步骤如下: 双击安装文件("qt-win-opensource-4.8.5-mingw.exe") 安装到此步骤后,设置MinGW的安装界面把MinGW-gcc440_

动态应用分组发布,实现从云资源生产到监控报警配置的全自动化

摘要: 动态应用分组发布,实现从客户云资源生产到监控报警配置的全自动化 现状当前的监控报警体系里,用户生成新的ECS服务器后,需要手工将这些ECS归类到各个应用分组中,才能关联报警规则. 但是随着上云越来越深入,机器的创建次数越来越频繁,单次创建数量越来越多,相应手工操作的时间成本就会越来越高.因此云监控推出了动态配置应用分组的功能,可以在机器创建之初,通过维护好实例名称,自动匹配监控报警. 原理解读首先在创建应用分组时,配置ECS名称的匹配规则.创建机器的时候命名好实例名称,云监控便会按如下流