前言
本文介绍c++使用mysql数据库连接的前期准备,以及如何在代码中实现简单的数据库操作。
环境与前期准备
操作系统:windows10
IDE: vs2013
mysql: 本机已安装 mysql 5.5
创建项目:创建一个空项目,本例选择win32 console Application,项目名为:cpp-mysql,.
初始代码:创建main.cpp,内容如下:(注意地址,端口,密码等连接信息自行设置)
#include<winsock.h>
#include<stdio.h>
#include<mysql.h>
using namespace std;
int main(){
MYSQL conn;
MYSQL_RES *res_set;
MYSQL_ROW row;
mysql_init(&conn);
if (!mysql_real_connect(&conn, "localhost", "root", "123456", "mysql", 3306, NULL, 0)){
fprintf(stderr, "Failed to connect to database: Error: %s\n",
mysql_error(&conn));
}
else{
fprintf(stderr, "Successfully connected to Database.\n");
int status = mysql_query(&conn, "SELECT * FROM user");
res_set = mysql_store_result(&conn);
int count = mysql_num_rows(res_set);
printf("No of rows = %d\n", count);
while ((row = mysql_fetch_row(res_set)) != NULL){
for (int i = 0; i<mysql_num_fields(res_set); i++){
printf("%s \t", row[i] != NULL ? row[i] : "NULL");
}
printf("\n");
}
}
mysql_close(&conn);
getchar();
return 0;
}
过程与步骤
为了能够正确引入头文件“mysql.h”,需要在项目属性中进行一系列设置。
1.按alt+f7 或 progres => cpp-mysql properties 今日项目属性设置
2.将mysql 安装目录中的include文件夹目录加入到Additional include directories 中。
(c/c++ => general)
3.将mysql 安装目录中的lib文件夹目录加入到additional library directory
(linker => general => additional library directory)
4.将libmysql.lib加入到linker=>input=>additional dependencies
5.尝试运行(注意需要用release方式运行),若提示以下报错,则将提示缺少的文件从mysql安装目录中复制到项目更目录的release文件夹。
出现以下报错:
解决办法:
结果
运行代码,测试连接是否成功。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。