将安装的mysql的 include文件夹 复制到项目文件夹中,将mysql的lib文件夹中的 libmysql.dll 与 libmysql.lib 文件 复制到项目文件夹中。
在使用mysql函数的类的头文件中添加
#include <winsock2.h>
#include "winsock.h"
#include "../include/mysql.h"
#pragma comment(lib,"libmysql.lib")
控件的响应函数中实现 数据库的数据插入:
void CInspectView::OnAddBnClicked()
{
MYSQL m_sql;
mysql_init(&m_sql);
if (!mysql_real_connect(&m_sql, "xxx.xxx.xxx.xxx", "root", "xxxx", "test", 3306, NULL, 0))
{
AfxMessageBox(_T("数据库连接失败"));
return;
}
else
{
AfxMessageBox(_T("数据库连接成功!"));
UpdateData(true);
mysql_query(&m_sql, "set names 'gb2312'");
char* use = (char*)m_datause.GetBuffer();
char* num = (char*)m_datanum.GetBuffer();
char* name = (char*)m_dataname.GetBuffer();
char* age = (char*)m_dataage.GetBuffer();
char* sex = (char*)m_datasex.GetBuffer();
char* bir = (char*)m_databirth.GetBuffer();
char* samtime = (char*)m_datasampletime.GetBuffer();
char* inspction = (char*)m_datainspection.GetBuffer();
char* patt = (char*)m_datapattern.GetBuffer();
char* sictype = (char*)m_datasicktype.GetBuffer();
char* inspect = (char*)m_datainspect.GetBuffer();
char* prof = (char*)m_dataproofer.GetBuffer();
char* bednum = (char*)m_databednum.GetBuffer();
char* mednum = (char*)m_datamedicalnum.GetBuffer();
char* item = (char*)m_dataitem.GetBuffer();
char* remark = (char*)m_dataremark.GetBuffer();
if (*num == 0)
{
AfxMessageBox(_T("请重新输入"));
return;
}
char insert[1000];
sprintf_s(insert, "insert into student(num,name,age,birth)values(\'%s'\,\'%s'\,\'%s'\,\'%s'\)", num, name, age,bir);
if (mysql_query(&m_sql, insert) == 0)
{
AfxMessageBox(_T("插入数据成功"));
}
else
{
AfxMessageBox(_T("插入数据失败"));
}
}
UpdateData(false);
mysql_close(&m_sql);
}