学习笔记|使用VS代码向mysql中写入数据以及调试相关操作

这里是跟着视频教程进行学习操作,在期间出现了一些问题,归纳总结,提供一定的参考,总结经验。

目录

1.关于VS环境配置相关操作,

2.然后是通过main函数  向数据库中写入数据,

3.程序运行结果

这里使用VS调用MYSQL,在创建项目后,需要对项目属性进行一定修改操作:

1.关于VS环境配置相关操作,

根据教学视频,也在CSDN中找到了相同的操作,可以参考下面链接

VS 2019 如何配置mysql环境?_mysql安装需要vs2019_歪歪坨的博客-CSDN博客

进行完这一步之后,就可以调用#include <mysql.h> 不会出现错误

2.然后是通过main函数  向数据库中写入数据,

这里向数据库中写入数据的函数 也是库函数,网上好像也可以查询到,我这里直接贴代码

首先是自定义的头文件<mysqlconnection.h>

#pragma once
 //实现musql数据的增删改查操作
#include  <mysql.h>
#include <string>
using namespace std;
class connection
{
public:
	//初始化数据库连接
	connection();
	// 释放数据库连接资源
	~connection();
	 // 连接数据库
	bool connect(string ip, unsigned short port, string user, string password,
		string dbname);
	// 更新操作 insert、delete、update
	bool update(string sql);
	// 查询操作 select
	MYSQL_RES* query(string sql);
private:
	MYSQL* _conn;//表示和musql server 的一条连接
};  

然后是对应的mysqlconnection.c文件代码

#include <mysql.h>
#include "public.h"
#include "connection.h"
connection ::connection()
{
	_conn = mysql_init(nullptr);
} 
// 释放数据库连接资源
connection::~connection()
{
	if (_conn != nullptr)
		mysql_close(_conn);
} 
// 连接数据库
bool connection :: connect(string ip, unsigned short port, 
	string user, string password,	string dbname)
{
	MYSQL* p = mysql_real_connect(_conn, ip.c_str(), user.c_str(),
		password.c_str(), dbname.c_str(), port, nullptr, 0);
	return p != nullptr;
}  
// 更新操作 insert、delete、update
bool connection :: update(string sql)
{
	if (mysql_query(_conn, sql.c_str()))
	{
		LOG("更新失败:" + sql);
		cout << mysql_errno(_conn) << endl;
		return false;
	} 
		return true;
} // 查询操作 select
MYSQL_RES* connection :: query(string sql)
{
	if (mysql_query(_conn, sql.c_str()))
	{
		LOG("查询失败:" + sql);
		return nullptr;
	} 
	return mysql_use_result(_conn);
}

里面构造函数和析构函数都已经写好了。然后是main.c函数

int main()
{
	//这是一段测试代码,看能够连接数据库,并写数据
	connection conn;
	char sql[1024] = { 0 };
	sprintf(sql,"insert into  user(name,age,sex)  values('%s',%d,'%s')",
		"lisi",20,"male");
	conn.connect("127.0.0.1", 3306, "root","", "chat");
	conn.update(sql);
	return 0;
}

代码说明:

1.mysql相关的标准函数,根据注释和主函数内容,应该可以侧得到是干什么的,我这里的MYSQL没有密码,多余主函数的第16行没有写,要注意,如果有想要测试的话,注意更改相关字符串!

2.这里没有Mysql创建表格的步骤,表格是在MYsql中预先创建好的,创建步骤简单说一下,,如下:差不多类似这样,(图中紫色部分不写也没啥)

首先创建数据库 chat是数据库的名字,然后在chat里面创建表

create DATABASE ​​​​​​​ chat
CREATE TABLE `user` (
  `id` int DEFAULT NULL COMMENT '序号',
  `name` varchar(20) DEFAULT NULL COMMENT '姓名',
  `age` int DEFAULT NULL COMMENT '年龄',
  `sex` char(10) DEFAULT NULL COMMENT '性别'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='员工表'

3.程序运行结果

如果运行没有错误的话,应该没啥问题 不过也出现了一些错误,我这里写我遇到的 根据mysqlconnection.c文件,如果没写入成功,会显示更新失败,错误提示代码是1399  

在网上查询之后,发现1399是因为输入中文导致,所以后续改了写入内容,全部改成了英文,然后就没什么错误了,,

 最后也是成功写入,结果如下,测试了几次,没什么问题

后续学习继续更新

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值