文章目录

  • 概要:本期主要讲解C或者C++怎么在程序中连接MySql数据库。
  • 主要步骤
  • 一、MySql的链接库
  • 二、项目环境配置
  • 三、项目内调用MySql类进行数据库操作
  • 1.准备工作
  • 2.连接数据库
  • 3.数据库建表
  • 4.向表中插入数据
  • 5.查询表中数据
  • 6.删除表格中的数据
  • 7.修改表格中的数据
  • 结尾:本期关于C/C++与MySql之间的连接及使用的讲解就到这,祝你学有所得哦:)


概要:本期主要讲解C或者C++怎么在程序中连接MySql数据库。

主要步骤

MySQL的链接库—>项目环境配置—>项目内部调用MySql类进行数据库操作。

一、MySql的链接库

如果你的计算机上已经安装了MySql数据库,那么按如下操作:

c win7 连接mysql c链接mysql_mysql


找到MySql Server文件夹

c win7 连接mysql c链接mysql_c++_02


选择lib文件夹

c win7 连接mysql c链接mysql_数据库_03


这两个数据库链接文件就是我们需要的,

如果你还没有安装MySql数据库,那就先去官网下载,ok(版本选择MySQL Installer for Window)

二、项目环境配置

接下来,我们需要先创建一个C/C++的项目,这里我用的IDE是VisualStudio2017.

c win7 连接mysql c链接mysql_c win7 连接mysql_04


创建完项目后,先去添加一个main.cpp,然后复制MySQL链接库到项目路径下

c win7 连接mysql c链接mysql_mysql_05


接下来开始编辑项目属性。

c win7 连接mysql c链接mysql_c win7 连接mysql_06

填入我们刚找到的MySQL链接库libmysql.lib

c win7 连接mysql c链接mysql_c语言_07


点击确定—>应用,下一步,我们要引入附加库目录。

c win7 连接mysql c链接mysql_c++_08


找到之前mysql server文件夹下的include路径,复制找铁道附加包含目录中

c win7 连接mysql c链接mysql_数据库_09


ok,到这里已经完成了对项目的环境配置

三、项目内调用MySql类进行数据库操作

1.准备工作

头文件:

//下面这两个头文件是需要引入的,不要更改引入顺序
#include <WinSock.h>
#include <mysql.h>

创建数据库操作对象:

MYSQL *mDatabase = new MYSQL;        //mysql对象
MYSQL_RES* mRes = new MYSQL_RES;	//查询结果集合对象
MYSQL_ROW mRow;						//存放获取道德数据

初始化数据库

//初始化数据库
mysql_init(mDatabase);

设置编码方式

//设置编码方式
	mysql_options(mDatabase, MYSQL_SET_CHARSET_NAME, "gbk");

2.连接数据库

//连接数据库,要想直接连接成功,先去命令行先创建一个数据库
if (mysql_real_connect(mDatabase, "localhost", "root", "gk131413", "library", 3306, NULL, 0))
{                           //主机       用户名   密码      数据库名  端口
	cout << "数据库连接成功" << endl;
}
else {
	cout<<"数据库连接失败"<< mysql_error(mDatabase) <<endl;
	//输出错误信息
}

3.数据库建表

//数据库中建表
string _sSqlStr = "create table books(name VARCHAR(10),count INT,author VARCHAR(8));";

if (mysql_query(mDatabase,_sSqlStr))
{
	cout << "创建失败!" << mysql_error(mDatabase) << endl;
}
else
{
	cout << "创建成功!" << endl;
}

4.向表中插入数据

string _sSqlStr = "insert into books(name,count,author) values(\"GUGUBO\",\"3\",\"GK\")";
if (mysql_query(mDatabase,_sSqlStr))
{
	cout << "插入失败!" << mysql_error(mDatabase) << endl;
}
else
{
	cout << "插入成功!" << endl;
}

5.查询表中数据

string _sSqlStr = "select * from books where name = \'GUGUBO\'";
if (mysql_query(mDatabase,_sSqlStr))
{
	cout << "查询失败!" << mysql_error(mDatabase) << endl;
}
else
{
	cout << "查询成功!" << endl;
}
//获取到查询结果
mRes = mysql_store_result(mDatabase);
while (mRow = mysql_fetch_row(mRes))
{
	cout << "name = " << mRow[0] << " author = " << mRow[1] << " borrowCount = " << mRow[2] << endl;
}

6.删除表格中的数据

string _sSqlStr = "delete from books where name = \'GUGUBO\'";
if (mysql_query(mDatabase,_sSqlStr))
{
	cout << "删除失败!" << mysql_error(mDatabase) << endl;
}
else
{
	cout << "删除成功!" << endl;
}

7.修改表格中的数据

string _sSqlStr = "update books set author = \'GK\'";
if (mysql_query(mDatabase,_sSqlStr))
{
	cout << "修改失败!" << mysql_error(mDatabase) << endl;
}
else
{
	cout << "修改成功!" << endl;
}

结尾:本期关于C/C++与MySql之间的连接及使用的讲解就到这,祝你学有所得哦:)