连接数据库函数代码如下:
CString Person::ConnectMySQL(void)
{
CString failOrSuccess;
//mysql_init(&m_sqlCon);
// localhost:服务器 root/1234为账号密码cooldowntest为数据库名 3306为端口
if(!mysql_real_connect(&m_sqlCon,"192.168.253.6","root","1234","cooldowntest",3306,NULL,0))
{ //在mfc 里面的话,连接数据库的这个语句的localhost要改成IP(我的IP是10.10.2.105);
failOrSuccess=_T("访问数据库失败");
//CString e=mysql_error(&m_sqlCon);本来网上是这样的代码但是出现字符串转换问题于是我修改了
CString e;
e.Format(_T("%d"), mysql_error(&m_sqlCon));//需要将项目属性中字符集修改为°使用多字节字符集”或未设置
AfxMessageBox( e );
//密码输错了弹出错误代码5098495.
//return; 作为函数后,由于必须要有返回值,所以就注释掉
}
else
{
//AfxMessageBox(_T("访问数据库成功"));
failOrSuccess=_T("访问数据库成功");
mysql_query(&m_sqlCon,"SET NAMES 'GB2312'");//解决数据库中读取数据后汉字乱码显示的问题
}
return failOrSuccess;
}
void InsertData(CString m_csPersonId, CString m_csPersonPwd);
// 因为连接数据库,插入,删除都需要这个变量或者这个变量的指针,所以定义为类的成员
MYSQL m_sqlCon;
// 把用户名密码传入,验证个人信息,返回一个字符串确定是登录成功还是失败,失败是2种原因,一个是密码错误,一个是用户名不存在
CString IdentifyInfor(CString m_csPersonId, CString m_csPersonPwd);
// 查询结果集的声明
MYSQL_RES *results;
// 查询结果行声明
MYSQL_ROW record;
附加:大一C++实训,在登陆注册过程中使用到了mysql