一.mysql的安装,这个相对简单,直接去官网下载mysql安装程序,就可以完成安装过程,网上有很多安装教程,这个没什么注意事项。
二、C++访问mysql,主要是用到mysql定义的头文件,内部定义了各种数据结构和函数,比如MYSQL,MYSQL_RES,MYSQL_ROW,mysql_real_connect等等一系列的结构和函数。这里要注意的就是将头文件及lib文件以及dll文件配置到当前开发环境来进行访问mysql数据库。
以最新的vs2013作为示例说一下配置过程。为了写的清晰点,在网上找了几张图来说明。
1.要指定mysql所用到的头文件,可以直接将mysql安装目录下的include文件下的头文件拷贝到vs安装目录的include目录下,但是一般我们都是为编译器指定一个额外的头文件目录即可。右键工程-> properties然后如下图,在这个附加包含目录(Additional Include Directory)添加上mysql的include文件,此文件在mysql安装目录下,例如本本文来源gaodai$ma#com搞$$代**码网人的安装目录
C:\Program Files\MySQL\MySQL Server 5.1\include
- #include “person.h”
- #include
- #include
- #include
- #include
- #include
- using namespace std;
- int main(){
- MYSQL *con;
- MYSQL_RES *results;
- MYSQL_ROW record;
- char dbuser[30] = “root”;
- char dbpasswd[30] = “123456”;
- char dbhost[30] = “localhost”;
- char dbname[30] = “person”;
- char tname[30] = “person”;
- char *query = nullptr;
- con = mysql_init(nullptr);
- if (!mysql_real_connect(con, dbhost, dbuser, dbpasswd, dbname, 3306, NULL, 0)){
- cerr << “Failed to connect database” << endl;
- exit(2);
- }
- mysql_set_character_set(con, “gbk”);
- mysql_query(con, “insert into person(id, name) values(‘370983198811256977’, ‘个’)”);
- mysql_query(con, “select name,id from person where id = ‘370983198811256977’”);
- results = mysql_store_result(con);
- cout << mysql_num_fields(results) << endl;
- while ((record = mysql_fetch_row(results))){
- cout << record[0] << endl;
- }
- mysql_close(con);
- return 0;
- }
#include "person.h"#include #include #include #include #include using namespace std;int main(){ MYSQL *con; MYSQL_RES *results; MYSQL_ROW record; char dbuser[30] = "root"; char dbpasswd[30] = "123456"; char dbhost[30] = "localhost"; char dbname[30] = "person"; char tname[30] = "person"; char *query = nullptr; con = mysql_init(nullptr); if (!mysql_real_connect(con, dbhost, dbuser, dbpasswd, dbname, 3306, NULL, 0)){ cerr << "Failed to connect database" << endl; exit(2); } mysql_set_character_set(con, "gbk"); mysql_query(con, "insert into person(id, name) values('370983198811256977', '个')"); mysql_query(con, "select name,id from person where id = '370983198811256977'"); results = mysql_store_result(con); cout << mysql_num_fields(results) << endl; while ((record = mysql_fetch_row(results))){ cout << record[0] << endl; } mysql_close(con); return 0; }