Visual Studio 连接 MySQL 数据库 实现数据库的读写(C++)

目录

一. MySQL的安装与配置

二. MySQl连接Visual Studio

三. 数据库的读写

(1) 从mysql中读取数据

(2) 将数据写入mysql

四. 总结


        前排提醒,本人只是对 Visual Studio连接MySQl的内容进行系统性的整理,由于CSDN上的关于这方面的内容太散了,所以想着整理一下从零到一的从MySQL的安装,到Visual Studio连接MySQl,再到使用SQL语句在C++程序中实现对数据库数据的读取与写入。

一. MySQL的安装与配置

        mysql的下载安装与配置-CSDN博客 文章写得很详细,一步一步跟着下载配置就行。

二. MySQl连接Visual Studio

        c/c++访问mysql数据库-CSDN博客   同样的在此处引用大佬的文章。

三. 数据库的读写

        关于MySQL数据库的读写,首先得完成上面的步骤。并且数据库的读写都是对本地数据库进行的操作,所以MySQL服务器的地址(127.0.01),MySQL服务器的端口号(3306)都是默认的。当然还得引入#include <mysql.h>头文件才能使用mysql的函数。

(1) 从mysql中读取数据

        1.先对数据库进行初始化连接,使用inIn_mysql时传入对应的参数即可,参数分别为数据库密码和想要进行操作的数据库名。

//初始化数据库
MYSQL inIt_mysql(const char* password, const char* dataBaseName) 
{
    MYSQL mysql; //数据库句柄
    //初始化数据库 
    mysql_init(&mysql);
    //连接数据库
    if (mysql_real_connect(&mysql, "127.0.0.1", "root",
        password, dataBaseName, 3306, NULL, 0) == NULL) 
    {
        cout << "错误原因" << mysql_error(&mysql);
        cout << "连接失败!\n";
        exit(-1);
    }
    return mysql;
}

        2.从mysql中获取数据并保存到程序中的变量中 ,前提:我创建了一个student的struct,包含id,name,grades,数据库表中的字段也是与struct相对应(这点在设计表字段与结构时应该根据功能进行设计)。传入的参数分别为数据库句柄(数据库初始化时返回的值,参考第一步)以及SQL语句(select 查询语句)。

//通过mysql获取data
vector<student> getMysqlData(MYSQL mysql, const char* sqlString)            
{
    if (mysql_query(&mysql, sqlString)) 
    {
        cout << "查询失败";
        return;
    }

    vector<student> studentVector;    //存储数据
    MYSQL_RES* res;       //查询结果集 
    MYSQL_ROW row;      //记录结构体
    res = mysql_store_result(&mysql);
	while (row = mysql_fetch_row(res)) {
		student stu;
        stu.id = stoi(row[2]); //stoi将string转换为int,mysql保存的是string类型
		stu.name = row[1];
		stu.grades = stoi(row[3]);
		studentVector.push_back(stu);  //存入vector中
	};
   
    mysql_free_result(res);        //释放结果集 
    mysql_close(&mysql);    //关闭数据库
}

(2) 将数据写入mysql

        这里同样要先对数据库进行初始化(调用定义的inIt_mysql函数即可),传入的参数是student的struct,使用字符串拼接的方法可以对往mysql插入的内容进行动态赋值然后插入想要进行批量插入数据只要写一个循环即可。

//向mysql中存入data
void pushMysqlData(student* st)                           
{
    MYSQL mysql = inIt_mysql("password", "dataBaseName");
    int id = st->id;
    string name = pre->name;
    int grades = pre->grades;

    //这里使用的是字符串拼接的方法构造SQL语句(不安全但简单)
    string sqlString = "insert into tableName(id,name, grades) 
    values(" + to_string(id) + ",'" + name + "', " + to_string(grades) + ")";

    //c_str()是将其转换为c语言风格的字符串
    mysql_query(&mysql, sqlStringr.c_str());    //写入数据
    //关闭数据库
    mysql_close(&mysql);
}

四.总结

        没有总结,完结撒花!!!

  • 6
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MySQL for Visual Studio 是一个适用于 Visual Studio 开发环境的插件,它允许开发人员直接在 Visual Studio 中与 MySQL 数据库进行交互和开发。 MySQL for Visual Studio 提供了一系列的功能和工具,方便开发人员快速开发和管理 MySQL 数据库。通过该插件,开发人员可以在 Visual Studio 中方便地进行数据库设计、查询、修改和调试操作,提高了开发效率和代码质量。 MySQL for Visual Studio 支持 Visual Studio 2010 及更高版本,并且与 MySQL Server 的最新版本兼容。它提供了一个与 Visual Studio 集成的数据库浏览器,开发人员可以通过该工具直观地查看和管理数据库中的表、视图、存储过程等对象。 此外,MySQL for Visual Studio 还提供了一个强大的查询编辑器,开发人员可以方便地编写和测试 SQL 查询语句。该编辑器不仅具有代码补全、语法高亮等常见的代码编辑功能,还提供了直观的结果集展示和调试功能,大大简化了开发人员对数据库的操作。 MySQL for Visual Studio 还支持代码生成,开发人员可以通过该插件生成与数据库表对应的实体类和相关的代码。这使得开发人员可以更加方便地进行数据访问层的开发,减少了手动编写重复代码的工作量。 总之,MySQL for Visual Studio 是一个非常有用的插件,可以大大提高开发人员在 Visual Studio 环境下与 MySQL 数据库交互和开发的效率。无论是进行数据库设计、查询、修改还是代码生成等操作,它都提供了方便、直观和高效的工具和功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值