《数据库原理及应用》课程设计报告.doc
《《数据库原理及应用》课程设计报告.doc》由会员分享,可在线阅读,更多相关《《数据库原理及应用》课程设计报告.doc(34页珍藏版)》请在三一办公上搜索。
1、 数据库原理及应用课程设计报告设计题目员工信息管理系统系统专业:计算机科学与技术班级:10计算机科学与技术(2)班姓名:曹 锋100312202程 昞100312206刘 劝100312223孙志强100312232王海川100312233谢 凯100312241指导老师:黄孝年 月日学号1003122020623323341姓名曹 锋程 昞刘 劝孙志强王海川谢 凯评价CCABBC开发背景 对于一个只有十个以下员工的企业来说,老板可以凭借自己的记忆力记住员工的基本信息、简历、工资信息等资料。 但是对于一个几十人、上百人、甚至上千人的企业来说,光凭管理者的记忆力肯定是不够的,采用手工记账的方式会
2、非常不方便。如果有一款管理软件能够完成公司员工信息的管理,这样会大大减轻管理者的负担。 需求分析 一个典型的员工信息管理系统需要有下面的功能: 需要有一个记录员工的员工编号、姓名、性别、籍贯、出生日期、住址等基本信息的员工基本信息管理模块; 需要有一个能够管理员工的学历、毕业院校、毕业时间、工作经历等信息的员工简历信息管理模块; 需要有一个能够管理员工的基本工资、奖金、个税、实发工资、发工资时间等信息的员工工资信息管理模块。绘制用例图设计系统功能 绘制用例图设计系统功能 系统开发环境 系统开发平台:Visual C+ 6.0。 数据库管理系统软件:Access 2003。 运行平台:win7数
3、据库分析 数据库概念设计 1,员工基本信息2.员工简历信息3. 员工工资信息数据库逻辑结构设计 1.“basicInfo”表的逻辑结构字段名数据类型是否主键描述id文本(varchar)是员工编号name文本(varchar否员工姓名sex文本(varchar)否性别home文本(varchar)否籍贯birthday文本(varchar)否出生日期phone_number文本(varchar)否电话号码status文本(varchar)否现任职务address文本(varchar)否家庭住址2.“work_resume”表的逻辑结构字段名数据类型是否主键描述id文本(varchar)是员工编
4、号name文本(varchar否员工姓名highest_degree文本(varchar)否最高学位highest_degree_time整数(int)否毕业时间college_school_name文本(varchar)否大学学校名称work_experience1文本(varchar)否工作经历1work_experience2文本(varchar)否工作经历2work_experience3文本(varchar)否工作经历33.“salary”表的逻辑结构字段名数据类型是否主键描述id文本(varchar)是员工编号name文本(varchar否员工姓名basic整数(int)否基本工资
5、bonus整数(int)否奖金tax整数(int)否个人税total整数(int)否实发工资year_month文本(varchar)否发工资年月应用系统界面的设计登陆口令登陆界面主界面员工基本信息添加信息修改性别删除该信息刘劝密码修改程序及代码登陆口令void CDlgLogin:OnOK() / TODO: Add extra validation hereCString username,password;/定义两个字符串变量m_edit_UserName.GetWindowText(username);/将文本框中的值赋给usernamem_edit_password.GetWindo
6、wText(password);/将文本框中的值赋给帕passwordm_logined_user = username; if(!m_database.IsOpen()/如果数据没有打开,则打开数据库if(m_database.Open(_T(StaffManageSystem)/如果正确打开数据库m_recordSet.m_pDatabase=&m_database;/将m_database对象赋给m_pDatabaseCString strSQL;strSQL.Format(select * from UserInfo where name=%s and password=%s,user
7、name, password); m_recordSet.Open(CRecordset:forwardOnly,strSQL);/打开记录集if(m_recordSet.GetRecordCount()=0)/如果找不到记录MessageBox(密码错误,请重新输入,密码错误,MB_OK|MB_ICONWARNING);/提示密码错误 m_edit_password.SetWindowText();/清空密码文本框 m_edit_password.SetFocus();/设置用户名文本框为当前的焦点else/如果找到记录 CDialog:OnOK();/进入到主窗口m_recordSet.C
8、lose();/关闭记录集m_database.Close();/关闭数据库else/如果没有正确打开数据库MessageBox(不能打开数据库);修改密码按键void CDlgAddUser:OnOK() / TODO: Add extra validation hereUpdateData();/判断新密码是是为空if(m_add_user_password.IsEmpty()|m_add_confirm_password.IsEmpty()MessageBox(密码不为空);elseif (m_add_confirm_password != m_add_user_password)Mes
9、sageBox(两次输入密码不一致,请重新输入新密码);m_add_confirm_password.Empty();m_add_user_password.Empty();UpdateData(FALSE);elseCDialog:OnOK();添加员工基本信息void CCase1View:OnAddBasicinfo() / TODO: Add your command handler code herem_dlgBasicInfo.m_addFlag = true;m_dlgBasicInfo.m_editFlag = false;/-/ 调用“员工基本信息管理”对话框if (IDCA
10、NCEL = m_dlgBasicInfo.DoModal()return;/-/ 新的员工基本信息写入数据库CString strSexInfo;if (m_dlgBasicInfo.m_sex = 0)strSexInfo = 男;else if (m_dlgBasicInfo.m_sex = 1)strSexInfo = 女;elseMessageBox(请选择员工性别);if(m_dlgBasicInfo.m_str_id.IsEmpty() | (m_dlgBasicInfo.m_str_name.IsEmpty()MessageBox(员工编号和姓名不能为空);elseCStrin
11、g strSQL;strSQL.Format(INSERT INTO basicInfo (id, name, sex, home, birthday, phone_number, status, address) VALUES (%s, %s, %s, %s, %s, %s, %s, %s), m_dlgBasicInfo.m_str_id, m_dlgBasicInfo.m_str_name, strSexInfo, m_dlgBasicInfo.m_str_home, m_dlgBasicInfo.m_str_birth_day,m_dlgBasicInfo.m_str_phone, m
12、_dlgBasicInfo.m_str_status, m_dlgBasicInfo.m_str_address);m_Db.ExecuteSQL(strSQL); AfxMessageBox(员工基本信息添加完毕!);strSQL = select * from basicInfo;DrawBasicInfoList(strSQL);员工简历信息按键void CCase1View:OnAddResume() / TODO: Add your command handler code herem_dlgResume.m_addFlag = true;m_dlgResume.m_editFlag
13、 = false;/-/打开“员工简历管理”对话框if (IDCANCEL = m_dlgResume.DoModal()return;/-/ 新的简历信息写入数据库if(m_dlgResume.m_str_id.IsEmpty() | (m_dlgResume.m_str_name.IsEmpty()MessageBox(员工编号和姓名不能为空);elseCString strSQL;strSQL.Format(INSERT INTO work_resume (id, name, highest_degree, highest_degree_time, college_school_name
14、, work_experience1, work_experience2, work_experience3) VALUES (%s, %s, %s, %d, %s, %s, %s, %s), m_dlgResume.m_str_id, m_dlgResume.m_str_name, m_dlgResume.m_str_degree,atoi(m_dlgResume.m_str_grad_year), m_dlgResume.m_str_school, m_dlgResume.m_str_work_exp1, m_dlgResume.m_str_work_exp2, m_dlgResume.m
15、_str_work_exp3);m_Db.ExecuteSQL(strSQL);AfxMessageBox(员工简历信息添加完毕!);strSQL = select * from work_resume;DrawResumeList(strSQL);/-员工工资信息按键void CCase1View:OnAddSalary() / TODO: Add your command handler code herem_dlgSalary.m_addFlag = true;m_dlgSalary.m_editFlag = false;/-/打开“员工工资管理”对话框if (IDCANCEL = m_
16、dlgSalary.DoModal()return;/-/ 新的工资信息写入数据库if(m_dlgSalary.m_str_id.IsEmpty() | (m_dlgSalary.m_str_name.IsEmpty()MessageBox(员工编号和姓名不能为空);elseint i_total = atoi(m_dlgSalary.m_str_basic_salary) + atoi(m_dlgSalary.m_str_bonus) - atoi(m_dlgSalary.m_str_tax);CString strSQL;strSQL.Format(INSERT INTO salary (
17、id, name, basic, bonus, tax, total, year_month) VALUES (%s, %s, %d, %d, %d, %d, %s), m_dlgSalary.m_str_id, m_dlgSalary.m_str_name, atoi(m_dlgSalary.m_str_basic_salary),atoi(m_dlgSalary.m_str_bonus), atoi(m_dlgSalary.m_str_tax),i_total, m_dlgSalary.m_str_date);m_Db.ExecuteSQL(strSQL);AfxMessageBox(员工
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库原理及应用 数据库 原理 应用 课程设计 报告
链接地址:https://www.31ppt.com/p-2395173.html