c语言 不能关闭mysql连接_C语言连接mysql数据库的方法以及遇到问题的解决方案...

所用编译器:codeblocks

所用数据库:mysql

一、使用codeblocks连接mysql数据库

选择 "setting -> Compiler" 添加动态链接库,共三步

添加“C:\mysql-8.0.16-winx64\lib\libmysql.lib”,前面是mysql的安装路径

2085c6d61c80063180f638cfd2ced8d4.png

2. 添加 “C:\mysql-8.0.16-winx64\include”

3b515d747aa47251edde28e241cda563.png

3. 添加“C:\mysql-8.0.16-winx64\bin”

2689d8c751649491cd89ebe3beadd7b5.png

然后编写程序,添加mysql.h头文件,没有报错,成功。

e3a64d16ceb5ce40bdeca5834bf6e6d8.png

连接数据库:

#include #include #include int main()

{

MYSQL mysql;

if (NULL == mysql_init(&mysql)) //分配和初始化MYSQL对象

{

printf("mysql_init(): %s\n", mysql_error(&mysql));

return -1;

}

//尝试与运行在主机上的MySQL数据库引擎建立连接

if (NULL == mysql_real_connect(&mysql,

"localhost",//主机

"root",//mysql用户名

"123456",//密码

"zhang",//所连接的数据库

0,

NULL,

0))

{

printf("mysql_real_connect(): %s\n", mysql_error(&mysql));

return -1;

}

printf("Connected MySQL successful! \n");

mysql_close(&mysql);

return 0;

}

连接成功!

279d6e8d55b0f43e7e7511d782dec4d0.png

二、遇到的问题以及解决方案

1、 “F:\code\mysql\main.c|9|undefined reference to `mysql_init@4'|”

原因:mysql和codeblocks一个使用的是32位,一个使用的是64位,需要将二者统一起来。要么都使用64位版本,要么都使用32位版本。

解决方案:将两个软件都换成64位或者都换成32位。

2、“计算机找不到libmysql.dll”

原因:libmysql.dll与.exe不在同一个目录下

解决方案:找到mysql安装目录下的lib文件夹,找到libmysql.dll文件,将它复制到所创建程序的Debug文件夹下,也就是.exe所在的文件夹下。

25028d3a87182f497103ea864352b3f3.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值