学生信息管理系统编码阶段文档.docx
《学生信息管理系统编码阶段文档.docx》由会员分享,可在线阅读,更多相关《学生信息管理系统编码阶段文档.docx(17页珍藏版)》请在冰豆网上搜索。
学生信息管理系统编码阶段文档
学
生
信
息
管
理
系
统
编
码
阶
段
文
撰稿人:
陈华军许凤珍詹春霞
信息工程学院111班
档
1引言
1.1编写目的
该文档是对学生信息管理系统项目的编码规范和代码说明。
1.2引用标准
《企业文档格式标准》V1.1,北京长江有限公司
《软件详细设计报告格式标准》V1.1,北京长江有限公司软件工程过程化组织
1.3参考资料
《实战Structs》,TedHustes.机械工业出版社
《管理信息系统》。
清华大学出版社
1.4范围
该文档定义了本项目的代码具体内容及说明。
1.5术语定义
Class(类):
Android程序中的一个程序单位,可以生成很多实例。
Packages(包);由很多类组成的工作包。
1.6版本更新信息
编号
修改日期
修改后版本
修改位置
修改内容概述
000
2代码
2.1连接数据库
if (CoInitialize(NULL)!
=0) {
AfxMessageBox("初始化COM支持库失败!
");
exit
(1);
}
try{
CString strConnect;;
strConnect.Format("DSN=myastudentsys;");
if(m_DB.Open(NULL,false,false,"ODBC;DSN=mystudentsys;UID=Sa;PWD=;")==0) {
AfxMessageBox("Unable to Connect to the Specified Data Source");
return FALSE
}
} catch(CDBException *pE) {
pE->ReportError();
pE->Delete();
return FALSE;
}
2.2登录代码
以下为总表查询的源代码:
CZongbiao message handlers void Clogindlg:
:
OnButton1() {
if (((CButton*)GetDlgItem(IDC_RADIO1))->GetCheck()) {
MessageBox("1被选中","",MB_OK);
UpdateData(TRUE);
if(m_name.IsEmpty() || m_pw.IsEmpty()){
MessageBox("用户名或密码不能为空");
return;
}
m_Num++;
CString sql;
sql.Format("select * from tb_studentuser where username = '%s' and pwd = '%s'",m_name,m_pw);
m_LoginSets = new Cloginsets(&((CMystudentApp*)AfxGetApp())->m_DB);
if(!
m_LoginSets->Open(AFX_DB_USE_DEFAULT_TYPE,sql)) {
AfxMessageBox("tb_studentuser 表打开失败!
"); }
if(m_LoginSets->GetRecordCount()!
=0) {
yonghuming=m_name;
mima=m_pw; Cstudentdlg dlg;
CDialog:
:
OnOK();
dlg.DoModal();
} else {
if(m_Num == 3) {
MessageBox("密码3次不正确");
CDialog:
:
OnCancel();
} else {
MessageBox("用户名或密码不正确");
m_name = "";
m_pw = "";
UpdateData(FALSE);
}
}
if(m_LoginSets->IsOpen()) {
m_LoginSets->Close();
delete m_LoginSets;
}
}else if (((CButton*)GetDlgItem(IDC_RADIO2))->GetCheck()) {
MessageBox("2被选中","",MB_OK);
UpdateData(TRUE);
if(m_name.IsEmpty() || m_pw.IsEmpty()) {
MessageBox("用户名或密码不能为空");
return; }
m_Num++;
CString sql;
sql.Format("select * from tb_teacheruser where username = '%s' and pwd = '%s'",m_name,m_pw);
m_LoginSett = new Cloginsett(&((CMystudentApp*)AfxGetApp())->m_DB);
if(!
m_LoginSett->Open(AFX_DB_USE_DEFAULT_TYPE,sql)) {
AfxMessageBox("tb_teacheruser 表打开失败!
");
} if(m_LoginSett->GetRecordCount()!
=0) {
yonghuming=m_name;
mima=m_pw;
Cteacherdlg2 dlg2;
CDialog:
:
OnOK();
dlg2.DoModal();
} else {
if(m_Num == 3) {
MessageBox("密码3次不正确");
CDialog:
:
OnCancel();
} else {
MessageBox("用户名或密码不正确");
m_name = "";
m_pw = "";
UpdateData(FALSE);
}
}
if(m_LoginSett->IsOpen())
{m_LoginSett->Close();
delete m_LoginSett; }
} else if (((CButton*)GetDlgItem(IDC_RADIO3))->GetCheck())
MessageBox("3被选中","",MB_OK);
UpdateData(TRUE);//编辑器里的值读到对应的窗口类中的成员变量中 if(m_name.IsEmpty() || m_pw.IsEmpty()) {
MessageBox("用户名或密码不能为空");
return;
}
m_Num++;
CString sql;
sql.Format("select * from tb_user where username1 = '%s' and pwd1 = '%s'",m_name,m_pw);
m_LoginSet = new Cloginset(&((CMystudentApp*)AfxGetApp())->m_DB);
if(!
m_LoginSet->Open(AFX_DB_USE_DEFAULT_TYPE,sql)) {
AfxMessageBox("tb_user 表打开失败!
");
}
if(m_LoginSet->GetRecordCount()!
=0) {
yonghuming=m_name;
mima=m_pw;
Cmangerdlg dlg;
CDialog:
:
OnOK();
dlg.DoModal();
} else {
if(m_Num == 3) {
MessageBox("密码3次不正确");
CDialog:
:
OnCancel();
} else {
MessageBox("用户名或密码不正确");
m_name = "";
m_pw = "";
UpdateData(FALSE);
}
}
if(m_LoginSet->IsOpen()) {
m_LoginSet->Close();
delete m_LoginSet;
}
}
}
2.3注册代码
void Clogondlg:
:
OnOK() {
// TODO:
Add extra validation here
if (((CButton*)GetDlgItem(IDC_RADIO1))->GetCheck()) {
UpdateData(TRUE);
if(m_oname.IsEmpty() || m_opwd.IsEmpty()) {
MessageBox("用户名或密码不能为空");
return;
}
// m_Num++;
CString sql;
sql.Format("select * from tb_studentuser where username = '%s'",m_oname,m_opwd);
m_LoginSets = new Cloginsets(&((CMystudentApp*)AfxGetApp())->m_DB);
if(!
m_LoginSets->Open(AFX_DB_USE_DEFAULT_TYPE,sql)) {
AfxMessageBox("tb_studentuser 表打开失败!
");
}
if(m_LoginSets->GetRecordCount()!
=0) {
AfxMessageBox("用户名已经存在");
if(m_LoginSets->IsOpen()) {
m_LoginSets->Close();
delete m_LoginSets;
}
return;
} else {
m_LoginSets->AddNew();
m_LoginSets->m_username=m_oname;
m_LoginSets->m_pwd=m_opwd;
m_LoginSets->Update();
m_LoginSets->Requery();
AfxMessageBox("注册成功");
} if(m_LoginSets->IsOpen())