关于MFC中数据库的引用,查看我之前文章https://blog.csdn.net/weixin_43917678/article/details/88779445
MYSQL mysqlCon;
mysql_init(&mysqlCon);
if (!mysql_real_connect(&mysqlCon, "localhost", "root", "123456", "test", 3306, NULL, 0))
{
MessageBox(_T("数据库连接失败!"));
}
else
{
MessageBox(_T("数据库连接成功!"));
mysql_query(&mysqlCon, "SET NAMES 'GB2312'");//解决从数据库中读取数据后汉字乱码显示的问题
char select[1000];
sprintf_s(select, "select* from alarm_system_allinfo");
mysql_real_query(&mysqlCon, select, (unsigned long)strlen(select));
MYSQL_RES *result;
MYSQL_ROW row;
result = mysql_store_result(&mysqlCon);
//如果为空则返回
if (NULL == result)
{
return;
}
int nIndex = m_allInfoList.GetItemCount(); // 获取list里面有多少行
CString num;
num.Format("%d", nIndex);
m_allInfoList.InsertItem(nIndex,num); //插入数据前必须要先开辟一个行
//重复读取行,把数据放入列表中,直到row为NULL
while (row = mysql_fetch_row(result))
{
for (int rols = 0; rols < 11; rols++)
{
CString myreaddata(row[rols]);
MessageBox(myreaddata);
m_allInfoList.SetItemText(nIndex, rols+1, myreaddata);//添加数据 分别是行 列 值
}
}
}
UpdateData(false);
mysql_close(&mysqlCon);