QT使用mysql
1.首先要下载qt create
官网链接:https://wiki.qt.io/Main
2.下载mysql驱动mysql-connector-c,注意是c或c++版本的驱动
官网下载地址:https://dev.mysql.com/downloads/connector/
3.将连接的libmysql.dll加入到qt的安装bin目录下如我的就是:
D:\QTT\qtsoft\5.4\mingw491_32\bin
4.由于QT5.4以上支持mysql驱动,也提供了API所以用起来也很方便
配置文件引入:
QT += core gui sql
5.代码,插入数据,头文件
#include<QSqlDatabase>
#include<QtSql> namespace Ui {
class SqlWidget;
} class SqlWidget : public QWidget
{
Q_OBJECT public:
explicit SqlWidget(QWidget *parent = );
~SqlWidget(); void InitData();
void InitUI();
void InitConnet(); private slots:
void on_pushButton_clicked(); void on_pushButton_2_clicked(); void on_pushButton_3_clicked(); private:
Ui::SqlWidget *ui; QSqlTableModel *m_Model; QSqlDatabase db;
}; #endif // SQLWIDGET_H
6.源文件
#include "sqlwidget.h"
#include "ui_sqlwidget.h" SqlWidget::SqlWidget(QWidget *parent) :
QWidget(parent),
ui(new Ui::SqlWidget)
{
ui->setupUi(this);
InitData(); } SqlWidget::~SqlWidget()
{
delete ui;
} void SqlWidget::InitData()
{
/**常见数据库驱动 QSQLITE ,QODBC,QPLSQL,SMYSQL***/
db = QSqlDatabase::addDatabase("QMYSQL");//加入mysql数据库
db.setHostName("localhost");
db.setDatabaseName("db");
//打开数据库
if(db.open("root","")==false)
{
ui->connectstate_lb->setText("连接失败!");
return;
}
ui->connectstate_lb->setText("连接成功!");
db.exec("create table tb2(eid vchar[10] not null,times vchar[10] not null,\
feedspeed float not null, \
)ENGINE=InnoDB DEFAULT CHARSET=utf8"); } void SqlWidget::InitUI()
{ } void SqlWidget::InitConnet()
{ } void SqlWidget::on_pushButton_clicked()
{ m_Model = new QSqlTableModel;
m_Model->setTable("ss");
m_Model->setHeaderData(,Qt::Horizontal,"eqid");
m_Model->setHeaderData(,Qt::Horizontal,"time");
m_Model->setHeaderData(,Qt::Horizontal,"feedspeed");
m_Model->setEditStrategy(QSqlTableModel::OnManualSubmit);
} void SqlWidget::on_pushButton_2_clicked()
{
if(db.isValid())
{
db.close();
}
} void SqlWidget::on_pushButton_3_clicked()
{
QSqlRecord rd = m_Model->record();
rd.setValue("eqid",ui->eqid_le->text().trimmed());
rd.setValue("time",ui->time_le->text().trimmed());
rd.setValue("feedspeed",ui->dsb->value());
m_Model->insertRecord(-,rd);
m_Model->submitAll(); }
QT使用mysql的更多相关文章
- QT连接MySQL
Qt 连接MySQL 是件很简单的事,但也有可能很不简单. QT给我们的提示只有 QMYSQL driver not loaded,让我们毫无头绪.访问其他数据库也可以用同样的方法解决. Qt 访问 ...
- centos7下编译qt的mysql驱动
在编译mysql驱动之前,首先要安装mysql,可以使用yum安装,这里将不再介绍. 在将qt和mysql都安装好之后,首先找到mysql的头文件以及他的共享库,我的mysql是使用yum安装的,头文 ...
- Mac下Qt连接MySQL 驱动问题
Mac OS X下Qt的mySQL driver编译安装 原创文章,采用CC协议发布,转载请注明: 转载自canX.me 本文链接地址: Mac OS X下Qt的mySQL driver编译安装 – ...
- QT连接mysql中文显示问题
亲测OK! #vim /etc/mysql/my.cnf [mysqld]下面加入: default-character-set=utf8 重启mysql /etc/init.d/mysql rest ...
- Window下 Qt 编译MySQL驱动(居然用到了动态库格式转换工具)
一步步在Window下开发Qt 今天开始安装MySQL,看了些关于MySQL安装的博文,方法大致相同,但是遇到的细节问题各有不同,或者没有讲全面,下面来说说个人的安装过程及遇到的问题. 1.首先下载, ...
- Ubuntu12.04下Qt连接MySQL数据库
本文介绍在Ubuntu12.04 (64 bit) 下使用Qt 4.8.2连接MySQL(Ver 14.14 Distrib 5.5.43)数据库. 1.安装 Qt 和 MySQL 若未安装以上软件, ...
- Ubuntu 15 下 Qt 配置mysql链接及基本操作
序 最近需要在Linux下做一个unix网络编程项目,选择了Ubuntu 最新版本15.04 : 开发环境:Qt 5 数据库: MySQL 安装Qt 和 MySQL 简要介绍一下软件的安装! 安装Qt ...
- Qt编译mysql以及创建表后进行导入操作
鉴于很多同学对Qt编译myql总是不能成功.出现各种问题,今天特此写出本教程,希望可以帮到须要的同学. 首先,须要明确编译的目的和原理. 目的:Qt 5.2版本号曾经都是不带mysql驱 ...
- windows下编译qt的mysql驱动
windows下编译qt的mysql驱动cd %QTDIR%\src\plugins\sqldrivers\mysqlqmake –o Makefile INCLUDEPATH+="C:\M ...
- QT使用MySql的配置(使用addLibraryPath载入插件),编译QT的MySql驱动问题及解决方案(自己使用libmysql.lib进行编译mysql.pro,万不得已可以查看Makefile.Debug以解决问题)
2010/04/23:Fixes : 更新批处理,以兼容WIN7. 第一次系统地玩QT,于是诞生了此预备式: [QT版本4.6.0(VS2008编译版),开发平台推荐使用Qt Creator(最新1. ...
随机推荐
- Springboot操作Elasticsearch
常见的日志系统是基于logstach+elasticsearch+kibna框架搭建的,但是有时候kibana的查询无法满足我们的要求,因此有时需要代码去操作es,本文后续都以es代替elastics ...
- Learning Markov Clustering Networks for Scene Text Detection
Learning Markov Clustering Networks for Scene Text Detection 论文下载:https://arxiv.org/pdf/1805.08365v1 ...
- ReactRouter中HashRouter和BrowserRouter的区别
仅个人理解,如有不当请指正 一.从原理上 HashRouter在路径中包含了#,相当于HTML的锚点定位.(# 符号的英文叫hash,所以叫HashRouter,和散列没关系哦)) 而BrowserR ...
- solr数据操作
本文介绍solr的基本数据操作,基于solr 8.2.solr支持多种数据格式,包括XML,JSON,CSV等,并提供多种脚本和工具来操作数据.本文讲解curl请求和JSON数据格式的处理方式. 本文 ...
- 浏览器中的 Event Loop
当我们执行 JS 代码的时候其实就是往执行栈中放入函数,那么遇到异步代码的时候该怎么办?其实当遇到异步的代码时,会被挂起并在需要执行的时候加入到 Task(有多种 Task) 队列中.一旦执行栈为空, ...
- postgresql密码加强-passwordcheck源码修改三种以上字符
目录 1.使用方式 2.效果 3.源码修改 1.参考pg_cron的源码在配置文件内增加一个参数 2.修改源码配置校验数字 因数据库入网检测须修改密码级别,在源有的passwordcheck插件上进行 ...
- Hadoop原生搭建
版本:(centos7.6) 在开始搭建平台前我已经预装了MySQL ps:MySQL创建用户并授权: grant all privileges on *.* to ' with grant opti ...
- 基于PyTorch实现MNIST手写字识别
本篇不涉及模型原理,只是分享下代码.想要了解模型原理的可以去看网上很多大牛的博客. 目前代码实现了CNN和LSTM两个网络,整个代码分为四部分: Config:项目中涉及的参数: CNN:卷积神经网络 ...
- 漫谈LiteOS之开发板-串口(基于GD32450i-EVAL)
[摘要] 主要讲解物联网的技术积累,本期我们先带领大家学习漫谈LiteOS之漫谈开发板第一集-串口,本文基于GD32450i-EVAL对串口以及其通信做了一个简要的分析,以及开发过程中遇到的一些技术 ...
- 为什么说 Java 中只有值传递?
对于初学者来说,要想把这个问题回答正确,是比较难的.在第二天整理答案的时候,我发现我竟然无法通过简单的语言把这个事情描述的很容易理解,遗憾的是,我也没有在网上找到哪篇文章可以把这个事情讲解的通俗易懂. ...