MFC學生管理系統通過連接MySQL實現對學生信息的管理。在使用MFC編寫學生管理系統之前,需要先連接MySQL數據庫。連接MySQL數據庫的方法如下:
// 定義連接數據庫對象 CDatabase* pDB = NULL; // 初始化 if(!AfxOleInit()) { AfxMessageBox("初始化失敗!"); exit(0); } // 連接數據庫 pDB = new CDatabase(); CString sDriver = "MySQL ODBC 5.3 Unicode Driver"; CString sServer = "localhost"; CString sUser = "root"; CString sPassword = "123456"; CString sDatabase = "student"; TRY { CString sDsn; sDsn.Format("DRIVER={%s};SERVER=%s;UID=%s;PWD=%s;DATABASE=%s;OPTION=3", sDriver, sServer, sUser, sPassword, sDatabase); pDB->Open(NULL, false, false, sDsn); AfxMessageBox("連接成功!"); } CATCH(CException, e) { AfxMessageBox("連接失敗!"); return; } END_CATCH
連接成功后,就可以對MySQL數據庫進行讀寫操作了。在學生管理系統中,需要對學生信息進行增刪改查操作,具體代碼如下:
// 插入學生信息 CString sqlStr; sqlStr.Format("INSERT INTO student_info(sid, sname, ssex, sage, smajor) VALUES('%s', '%s', '%s', '%s', '%s')", strID, strName, strSex, strAge, strMajor); pDB->ExecuteSQL(sqlStr); // 刪除學生信息 CString sqlStr; sqlStr.Format("DELETE FROM student_info WHERE sid='%s'", strID); pDB->ExecuteSQL(sqlStr); // 修改學生信息 CString sqlStr; sqlStr.Format("UPDATE student_info SET sname='%s', ssex='%s', sage='%s', smajor='%s' WHERE sid='%s'", strName, strSex, strAge, strMajor, strID); pDB->ExecuteSQL(sqlStr); // 查詢學生信息 CString sqlStr; sqlStr.Format("SELECT * FROM student_info WHERE sid='%s'", strID); CRecordset rec(pDB); rec.Open(CRecordset::forwardOnly, sqlStr); if(!rec.IsEOF()) { rec.GetFieldValue("sname", strName); rec.GetFieldValue("ssex", strSex); rec.GetFieldValue("sage", strAge); rec.GetFieldValue("smajor", strMajor); } else { strName = ""; strSex = ""; strAge = ""; strMajor = ""; } rec.Close();
MFC連接MySQL數據庫實現學生管理系統,就完成了。通過以上代碼,可以清晰地了解MFC與MySQL的連接和數據操作。