一、 创建项目并配置所需头文件及库
(一) 创建空项目
使用VS2015创建空项目
(二) 添加项目所需头文件所在文件夹
右键项目选择属性,进入C/C++ => 常规 => 附加包含目录,添加D:\mysql-5.7.19-win64\include(根据自己安装的MySQL版本及地址填写)
![](https://images2018.cnblogs.com/blog/1222009/201711/1222009-20171125201545890-895813357.png)
(三) 添加所需库
仍在属性页,进入链接器 => 常规 => 附加库目录,添加D:\mysql-5.7.19-winx64\lib(根据自己情况填写)
![](https://images2018.cnblogs.com/blog/1222009/201711/1222009-20171125201605921-643950997.png)
(四) 添加libmysql.dll
在项目的.\x64\Debug\中添加libmysql.dll(从计算机的资源管理器中添加),该dll文件在D:\mysql-5.7.19-winx64\lib目录下
![](https://images2018.cnblogs.com/blog/1222009/201711/1222009-20171125201631578-847612473.png)
若为执行这步会出现以下错误:
![](https://images2018.cnblogs.com/blog/1222009/201711/1222009-20171125201641250-1761694982.png)
二、 代码测试
(一) 添加项,将下列代码复制运行即可
#include "stdio.h"
#include "mysql.h"
int main()
{
MYSQL * con; //= mysql_init((MYSQL*) 0);
MYSQL_RES *res;
MYSQL_ROW row;
char tmp[400];
//database configuartion
char dbuser[30] = "root";
char dbpasswd[30] = "123456"; // it must be changed
char dbip[30] = "localhost";
char dbname[50] = "hospital";
char tablename[50] = "bl";
char *query = NULL;
int x;
int y;
int rt;//return value
unsigned int t;
int count = 0;
con = mysql_init((MYSQL*)0);
if (con != NULL && mysql_real_connect(con, dbip, dbuser, dbpasswd, dbname, 3306, NULL, 0)) {
if (!mysql_select_db(con, dbname)) {
printf("Select successfully the database!\n");
con->reconnect = 1;
query = "set names \'GBK\'";
rt = mysql_real_query(con, query, strlen(query));
if (rt) {
printf("Error making query: %s !!!\n", mysql_error(con));
}
else {
printf("query %s succeed!\n", query);
}
}
}
else {
MessageBoxA(NULL, "Unable to connect the database,check your configuration!", "", NULL);
}
//sprintf(tmp, "insert into %s values(%s,%d,%d)", tablename, "null", x, y); //注意如何向具有自增字段的数据库中插入记录
sprintf(tmp, "insert into bl values(null,'x','x','x','x')");
rt = mysql_real_query(con, tmp, strlen(tmp));
if (rt)
{
printf("Error making query: %s !!!\n", mysql_error(con));
}
else
{
printf("%s executed!!!\n", tmp);
}
sprintf(tmp, "select * from %s", tablename);
rt = mysql_real_query(con, tmp, strlen(tmp));
if (rt)
{
printf("Error making query: %s !!!\n", mysql_error(con));
}
else
{
printf("%s executed!!!\n", tmp);
}
res = mysql_store_result(con);//将结果保存在res结构体中
while (row = mysql_fetch_row(res)) {
for (t = 0; t |