iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >[Mysql | C++] C++中使用Mysql数据库
  • 244
分享到

[Mysql | C++] C++中使用Mysql数据库

mysqlc++数据库 2023-10-25 16:10:33 244人浏览 薄情痞子
摘要

目录 一、环境安装 二、环境配置  三、编写程序 一、环境安装 1.Mysql 8.0 2.Microsoft Visual Studio 2017 注意:vs2019版本及以下才支持Mysql,若使用高版本可以使用SQL Serve

目录

一、环境安装

二、环境配置

 三、编写程序


一、环境安装

1.Mysql 8.0

2.Microsoft Visual Studio 2017

注意:vs2019版本及以下才支持Mysql,若使用高版本可以使用SQL Server

二、环境配置

检查mysql 8.0的安装文件夹中是否包含include和lib文件夹,若不存在,需要重新安装

打开项目属性页面

[调试]中的[环境]改为bin文件夹地址

4.将[c/c++]中的[常规][附加包含目录]改为include文件夹地址

5.将[链接器]下的[常规]中的[附加库目录]改为lib文件夹地址

6.将[链接器]下的[输入]中的[附加依赖项]改为libmysql.lib的地址

7.根据自己的系统位数(64/32)添加libmysql.dll:

(1)从这位博主的网盘获取动态链接库:

32位/64位 libmysql.dll和libmysql.lib下载_libmysql.dll下载_不吃水果的太空人的博客-CSDN博客

(2)以64位为例(我的是64位),把下载好的64位dll放到system32文件夹(存放64位文件),把32位dll放到sysWOW64文件夹(存放32位文件)

(3)在Mysql 8.0的安装文件夹中打开bin,复制libcrypto-1_1-x64.dll和libssl-1_1-x64.dll两个动态链接库,粘贴到system32文件夹中

(4)把64位libmysql.dll放到cpp同目录下

注意:这一步(7)是为了解决我遇到的两个问题,一个是缺少libcrypto-1_1-x64.dll和libssl-1_1-x64.dll两个动态链接库;另一个是“无法定位程序于xxx”。

将运行平台改为x64,完成

 三、编写程序

#define _CRT_SECURE_NO_WARNINGS#include "bits/stdc++.h"#include "mysql.h"class Mysql {private:MYSQL mysql;MYSQL_RES* res;public:Mysql() {res = nullptr;mysql_init(&mysql); // initmysql_options(&mysql, MYSQL_SET_CHARSET_NAME, "gbk"); // 设置编码}void connectToDatabase(const char* passWord) {// 函数参数自行百度,其中"mysql"是mysql原来就有的数据库,可以暂时连接到它if (mysql_real_connect(&mysql, "localhost", "root", password, "mysql", 3306, NULL, 0) != NULL) {std::cout << "mysql连接成功" << "\n";}else {std::cout << "mysql连接失败" << "\n";}}void createDatabase(std::string name) {std::string query = "create database if not exists " + name + ";";if (mysql_query(&mysql, query.c_str()) == 0) { // 0 是能执行std::cout << name << "创建成功" << "\n";}else {std::cout << name << "已存在" << "\n";}}void useDatabase(std::string name) {std::string query = "use " + name + ";";if (mysql_query(&mysql, query.c_str()) == 0) {std::cout << "正在使用" + name << "\n";}else {std::cout << "使用失败" << "\n";}}void writeInfo(std::string query) {if (mysql_query(&mysql, query.c_str()) == 1) {std::cout << "错误原因" << mysql_error(&mysql) << "\n";return;}res = mysql_store_result(&mysql);int field_num = mysql_num_fields(res);MYSQL_FIELD *field_name = mysql_fetch_fields(res);std::cout << "\n";for (int i = 0; i < field_num; ++i) {std::cout << field_name[i].name << " \n"[i == field_num - 1];}MYSQL_ROW row;while (row = mysql_fetch_row(res)) {for (int i = 0; i < field_num; ++i) {if (row[i] != NULL) {if (strlen(row[i]) > 0) std::cout << row[i] << " ";else std::cout << "NULL";}else std::cout << "NULL" << " ";}std::cout << "\n";}std::cout << "\n";}};signed main() {Mysql op;// 连接到默认数据库op.connectToDatabase("010214");// 创建数据库op.createDatabase("newDatabase");// 使用数据库op.useDatabase("newDatabase");// ......}

注意:

代码完成了Mysql类的实现,各个函数自行百度。

在 useDatabase() 调用后,就可以根据自己的需要创建表,插入数据等等操作,核心思想就是用 mysql_query(string) 发起请求。

writeInfo() 实现了结果集的输出。

如果插入的数据量很大,可以自定义结构体莱实现insert,如下:

(具体情况见专栏第二篇https://blog.csdn.net/joyride_run/article/details/130496869

#define _CRT_SECURE_NO_WARNINGS#include "bits/stdc++.h"struct TableS {std::string sno, sname, city;int status;TableS() = default;TableS(std::string sno, std::string sname, int status, std::string city) {this->sno = sno;this->sname = sname;this->status = status;this->city = city;}static std::string query(TableS t) {std::string query = "insert into s(sno, sname, status, city) values('" + t.sno + "', '" + t.sname + "', " + std::to_string(t.status) + ", '" + t.city + "');";return query;}static void cinData(std::string filePath, std::vector  &v) {std::cout << filePath << "\n";FILE *fp = fopen(filePath.c_str(), "r");char a[20], b[20], d[20]; int c;// 会有编码问题,需要进行转码while (fscanf(fp, "%s %s %d %s", a, b, &c, d) != EOF) {v.push_back(TableS(std::string(a), std::string(b), c, std::string(d)));}fclose(fp);}};

C++在Mysql中的基本使用就是这些,欢迎纠错。

来源地址:https://blog.csdn.net/joyride_run/article/details/130403835

您可能感兴趣的文档:

--结束END--

本文标题: [Mysql | C++] C++中使用Mysql数据库

本文链接: https://www.lsjlt.com/news/442591.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • [Mysql | C++] C++中使用Mysql数据库
    目录 一、环境安装 二、环境配置  三、编写程序 一、环境安装 1.Mysql 8.0 2.Microsoft Visual Studio 2017 注意:vs2019版本及以下才支持Mysql,若使用高版本可以使用SQL Serve...
    99+
    2023-10-25
    mysql c++ 数据库
  • C++使用MySQL Connector/C++访问mysql数据库
    去官网下载,分为release模式和debug模式两种,分别对应VS中的release和debug。如下图所示: 注意: 如果使用debug模式,下载的上面的release模式库文件,那么编译就会出...
    99+
    2023-09-05
    数据库 mysql c++
  • C++如何mysql数据库
    本篇文章为大家展示了C++如何mysql数据库,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。(一)通过ADO连接MySql数据库1、通过ADO连接MySql数据库,首先得安装MyODBC服务器程序。...
    99+
    2023-06-17
  • C#连接MySQL数据库
    目录 一、引用MySql.Data.dll文件 二、连接、关闭数据库 三、数据库增删改查 附:完整代码 一、引用MySql.Data.dll文件 创建C#窗体应用程序,解决方案资源管理器中找到“引用”,右键,选择添加引用。 在MyS...
    99+
    2023-10-28
    c# 数据库 mysql
  • c++ 连接mysql数据库
            使用vs2019对window11中的数据库进行连接 1. 配置连接环境         首先需要把mysql中的头文件和库文件放入到c++项目工程中 打开安装MySQL的目录,在windows系统中如果是默认路径,应该和我...
    99+
    2023-09-03
    数据库
  • C# 连接 MySQL 数据库
    目录 一、需求 二、新建 C# 项目 三、MySQL数据库 四、MySqlHelper 五、测试 一、需求 C# 使用 MySQL 数据库的情况还是比较少的,大部分使用 Windows 平台一般使用 SQL Server,在两年前我...
    99+
    2023-09-02
    c# 数据库
  • 【MySQL】C/C++代码操作数据库
    简单尝试使用c语言的库对mysql的数据进行增删改查 1.新增数据库和表 刚开始数据库没有设定密码和用户,直接用root用户登录 mysql -uroot; 创建一个hello数据库,并进入这个数据库 create database he...
    99+
    2023-08-19
    mysql 数据库 sql
  • C++怎么连接并使用MySQL数据库
    这篇文章主要为大家展示了“C++怎么连接并使用MySQL数据库”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“C++怎么连接并使用MySQL数据库”这篇文章吧。1...
    99+
    2024-04-02
  • C++中怎么连接MySqL数据库
    这期内容当中小编将会给大家带来有关C++中怎么连接MySqL数据库,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。C++连接MySqL数据库代码示例:#include < stdi...
    99+
    2023-06-17
  • C# MySQL数据库的操作
    文章目录 前言一、MySQL数据库二、使用步骤 1.引入库2.操作方法总结 前言 记录一下MySQL数据库一些简单操作 一、MySQL数据库 MySQL数据库也不用过多介绍,使用非常广泛。优点就是体积小,速度快,非常适合我们...
    99+
    2023-09-05
    c#
  • C# 中怎么利用ODBC访问MySQL数据库
    C# 中怎么利用ODBC访问MySQL数据库,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。安装Microsoft ODBC.net:我安装的是mysql-con...
    99+
    2023-06-17
  • c#怎么连接mysql数据库
    在C#中连接MySQL数据库,可以使用MySQL Connector/Net,它是MySQL官方提供的用于.NET平台的数据库驱动程...
    99+
    2024-04-09
    c# mysql
  • C/C++ 使用 MySQL API 操作 数据库 (API讲解 、案例分享)
    C/C++ 对 MySQL API 的使用 简介 文章目录 C/C++ 对 MySQL API 的使用简介1. C/C++ 使用 API介绍2. C/C++ 环境配置和操作示例代码2.1 My...
    99+
    2023-09-11
    mysql c++ visual studio
  • c++怎么连接mysql数据库
    要连接MySQL数据库,可以使用MySQL提供的MySQL C++ Connector或者第三方库来实现。 1、使用MySQL C+...
    99+
    2024-04-09
    c++ mysql
  • c#怎么访问mysql数据库
    要访问MySQL数据库,可以使用MySQL官方提供的MySQL Connector/Net库。以下是使用C#连接MySQL数据库的一...
    99+
    2024-04-18
    c# mysql
  • c++怎么访问mysql数据库
    在C++中访问MySQL数据库通常需要使用MySQL官方提供的MySQL C API。以下是一些基本步骤来访问MySQL数据库: ...
    99+
    2024-04-18
    c++ mysql
  • c#怎么用mysql数据库连接池
    c#用mysql数据库连接池的示例:class DbConn{private const int MaxPool=10;//最大连接数private const int MinPool=5;//最小连接数private const bool...
    99+
    2024-04-02
  • C 语言中怎么访问MySQL数据库
    本篇文章给大家分享的是有关C 语言中怎么访问MySQL数据库,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。首先,建立一个MySQL用户rick...
    99+
    2024-04-02
  • 在C#中使用MongoDB数据库
    一、添加MongoDB引用 想要在C#中使用MongoDB,首先安装支持MongoDB的C#版的驱动。 利用MongoDB官方发布的C#驱动,可通过网络下载或nuget安装,得到M...
    99+
    2024-04-02
  • C#连接Mysql数据库的方法
    C#连接Mysql数据库的方法?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!本文讲的是C#连接Mysql数据库,下文附有详...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作