热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Qt5操作Mysql数据库

Qt5.9.9,MSVC201564bit,Mysql5.564bit(编译器位数需与MySql位数一致)1.找到mysql安装文件中的libmysql

Qt5.9.9,MSVC2015 64bit,Mysql5.5 64bit(编译器位数需与MySql位数一致)
1.找到mysql安装文件中的libmysql.dll文件,复制到D:\Qt\Qt5.9.9\5.9.9\msvc2015_64\bin;
2.项目文件pro添加 QT += sql;
3.添加头文件 #include (没有空格);
4.实例:点击一次按钮给数据库增加一条数据。
尤其注意mainwindow.cpp中注释“//主键不能进行设置,否则报错。表中算上主键共五个字段,只设置后四个。”。
main.cpp

#include "mainwindow.h"
#include
int main(int argc, char *argv[])
{QApplication a(argc, argv);MainWindow w;w.show();return a.exec();
}

mainwindow.h

#ifndef MAINWINDOW_H
#define MAINWINDOW_H#include
#include
#include
#include
#include QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACEclass MainWindow : public QMainWindow
{Q_OBJECTpublic:MainWindow(QWidget *parent = nullptr);~MainWindow();private slots:void on_pushButton_clicked();private:Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H

mainwindow.cpp

#include "mainwindow.h"
#include "ui_mainwindow.h"
int num1,num2,num3,num4;
QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");MainWindow::MainWindow(QWidget *parent): QMainWindow(parent), ui(new Ui::MainWindow)
{ui->setupUi(this);db.setHostName("localhost");db.setDatabaseName("world");db.setUserName("root");db.setPassword("123");
}MainWindow::~MainWindow()
{delete ui;
}void MainWindow::on_pushButton_clicked()
{ num1&#43;&#61; 1;num2&#43;&#61; 1;num3&#43;&#61; 1;num4&#43;&#61; 1;if(db.open()){QSqlQuery query;//使用query.exec("select * from city");传送固定sql语句。//query.exec("select * from city");//使用query.prepare("insert into city values(?,?,?,?,?)");可以在程序外修改sql语句。query.prepare("insert into city values(?,?,?,?,?)");//主键不能进行设置&#xff0c;否则报错。表中算上主键共五个字段&#xff0c;只设置后四个。query.bindValue(1,num1);query.bindValue(2,num2);query.bindValue(3,num3);query.bindValue(4,num4);bool success &#61; query.exec();if(!success){QSqlError lastError &#61; query.lastError();//返回数据库的错误信息qDebug() <}


推荐阅读
  • [转]doc,ppt,xls文件格式转PDF格式http:blog.csdn.netlee353086articledetails7920355确实好用。需要注意的是#import ... [详细]
  • iOS 不定参数 详解 ... [详细]
  • 本文详细介绍了 PHP 中对象的生命周期、内存管理和魔术方法的使用,包括对象的自动销毁、析构函数的作用以及各种魔术方法的具体应用场景。 ... [详细]
  • 【线段树】  本质是二叉树,每个节点表示一个区间[L,R],设m(R-L+1)2(该处结果向下取整)左孩子区间为[L,m],右孩子区间为[m ... [详细]
  • Docker 环境下 MySQL 双主同步配置指南
    本文介绍了如何在 Docker 环境中配置 MySQL 的双主同步,包括目录结构的创建、配置文件的编写、容器的创建与设置以及最终的验证步骤。 ... [详细]
  • 本文介绍了如何在Delphi中使用剪切板类TClipboard进行文本的复制和粘贴操作,包括AsText属性、SetTextBuf方法和GetTextBuf方法的具体使用。 ... [详细]
  • malloc 是 C 语言中的一个标准库函数,全称为 memory allocation,即动态内存分配。它用于在程序运行时申请一块指定大小的连续内存区域,并返回该区域的起始地址。当无法预先确定内存的具体位置时,可以通过 malloc 动态分配内存。 ... [详细]
  • 我有一个从C项目编译的.o文件,该文件引用了名为init_static_pool ... [详细]
  • 本文总结了Java初学者需要掌握的六大核心知识点,帮助你更好地理解和应用Java编程。无论你是刚刚入门还是希望巩固基础,这些知识点都是必不可少的。 ... [详细]
  • 【妙】bug称它为数组越界的妙用
    1、聊一聊首先跟大家推荐一首非常温柔的歌曲,跑步的常听。本文主要把自己对C语言中柔性数组、零数组等等的理解分享给大家,并聊聊如何构建一种统一化的学习思想 ... [详细]
  • 本文详细介绍了Java反射机制的基本概念、获取Class对象的方法、反射的主要功能及其在实际开发中的应用。通过具体示例,帮助读者更好地理解和使用Java反射。 ... [详细]
  • C语言中全部可用的数学函数有哪些?2.longlabs(longn);求长整型数的绝对值。3.doublefabs(doublex);求实数的绝对值。4.doublefloor(d ... [详细]
  • IOS Run loop详解
    为什么80%的码农都做不了架构师?转自http:blog.csdn.netztp800201articledetails9240913感谢作者分享Objecti ... [详细]
  • Halcon之图像梯度、图像边缘、USM锐化
    图像梯度、图像边缘、USM锐化图像梯度、图像边缘、USM锐化图像梯度、图像边缘、USM锐化图像卷积:1.模糊2.梯度3.边缘4.锐化1.视频教程:B站、 ... [详细]
  • 本文介绍如何使用线段树解决洛谷 P1531 我讨厌它问题,重点在于单点更新和区间查询最大值。 ... [详细]
author-avatar
陶磊2922_502
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有