代码:
//MySQL的简单实用事例
#include<iostream>
#include<mysql/mysql.h>
#include<errno.h>
#include<string.h>
using namespace std;
//需要提前安装MySQL数据库和在数据库内建库,建表,了解MySQL的基本指令
int main()
{
//初始化mysql
MYSQL *mpcon = mysql_init((MYSQL *)0);
MYSQL_RES *mp_res;//接收指令的返回值
MYSQL_ROW mp_row;//获取返回值的一行
//连接mysql 数据库指针 ip 数据库名 密码 端口号
if(!mysql_real_connect(mpcon,"127.0.0.1","root","123456",NULL,3306,NULL,0))
{
cerr<<"sql connect fail;errno:"<<errno<<endl;
return 0;
}
//选择数据库 数据库指针 库名
if(mysql_select_db(mpcon,"chat"))
{
cerr<<"select fail:errno:"<<errno<<endl;
return 0;
}
//需要提前在数据库内建表
//输入指令 表名 表内内容
char cmd[100] = "insert into user values('lisi','456789');";
if(mysql_real_query(mpcon,cmd,strlen(cmd)))
{
cerr<<"0 query fail;errno:"<<errno<<endl;
return 0;
}
//输入指令
char cmd1[100] = "insert into user values('wangwu','456789');";
if(mysql_real_query(mpcon,cmd1,strlen(cmd1)))
{
cerr<<"1 query fail;errno:"<<errno<<endl;
return 0;
}
//查找
char cmd2[100] = "select * from user where name='lisi';";
if(mysql_real_query(mpcon,cmd2,strlen(cmd2)))
{
cerr<<"2 query fail;errno:"<<errno<<endl;
return 0;
}
//接收指令的返回值
mp_res = mysql_store_result(mpcon);
//接收返回值的一行
mp_row = mysql_fetch_row(mp_res);
cout<<"name:"<<mp_row[0]<<" "<<"num"<<mp_row[1]<<endl;
//查找
char cmd3[100] = "select * from user;";
if(mysql_real_query(mpcon,cmd3,strlen(cmd3)))
{
cerr<<"3 query fail;errno:"<<errno<<endl;
return 0;
}
//接收指令的返回值
mp_res = mysql_store_result(mpcon);
//接收返回值的一行
while(mp_row = mysql_fetch_row(mp_res))
{
cout<<"name:"<<mp_row[0]<<" "<<"num"<<mp_row[1]<<endl;
}
mysql_free_result(mp_res);
mysql_close(mpcon);
return 0;
}