《数据库原理及应用》课程设计报告Word文档下载推荐.docx
《《数据库原理及应用》课程设计报告Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《《数据库原理及应用》课程设计报告Word文档下载推荐.docx(40页珍藏版)》请在冰豆网上搜索。
33
41
姓名
曹锋
程昞
刘劝
孙志强
王海川
谢凯
评价
C
A
B
开发背景
•对于一个只有十个以下员工的企业来说,老板可以凭借自己的记忆力记住员工的基本信息、简历、工资信息等资料。
•但是对于一个几十人、上百人、甚至上千人的企业来说,光凭管理者的记忆力肯定是不够的,采用手工记账的方式会非常不方便。
如果有一款管理软件能够完成公司员工信息的管理,这样会大大减轻管理者的负担。
需求分析
•一个典型的员工信息管理系统需要有下面的功能:
•需要有一个记录员工的员工编号、姓名、性别、籍贯、出生日期、住址等基本信息的员工基本信息管理模块;
•需要有一个能够管理员工的学历、毕业院校、毕业时间、工作经历等信息的员工简历信息管理模块;
•需要有一个能够管理员工的基本工资、奖金、个税、实发工资、发工资时间等信息的员工工资信息管理模块。
绘制用例图设计系统功能
系统开发环境
•系统开发平台:
VisualC++6.0。
•数据库管理系统软件:
Access2003。
•运行平台:
win7
数据库分析
数据库概念设计
1,员工基本信息
2.员工简历信息
3.员工工资信息
数据库逻辑结构设计
1.“basicInfo”表的逻辑结构
字段名
数据类型
是否主键
描述
id
文本(varchar)
是
员工编号
name
文本(varchar
否
员工姓名
sex
性别
home
籍贯
birthday
出生日期
phone_number
电话号码
status
现任职务
address
家庭住址
2.“work_resume”表的逻辑结构
highest_degree
最高学位
highest_degree_time
整数(int)
毕业时间
college_school_name
大学学校名称
work_experience1
工作经历1
work_experience2
工作经历2
work_experience3
工作经历3
3.“salary”表的逻辑结构
basic
基本工资
bonus
奖金
tax
个人税
total
实发工资
year_month
发工资年月
应用系统界面的设计
登陆口令
登陆界面
主界面
员工基本信息
添加信息
修改性别
删除该信息刘劝
密码修改
程序及代码
voidCDlgLogin:
:
OnOK()
{
//TODO:
Addextravalidationhere
CStringusername,password;
//定义两个字符串变量
m_edit_UserName.GetWindowText(username);
//将文本框中的值赋给username
m_edit_password.GetWindowText(password);
//将文本框中的值赋给帕password
m_logined_user=username;
if(!
m_database.IsOpen())
{
//如果数据没有打开,则打开数据库
if(m_database.Open(_T("
StaffManageSystem"
)))//如果正确打开数据库
{
m_recordSet.m_pDatabase=&
m_database;
//将m_database对象赋给m_pDatabase
CStringstrSQL;
strSQL.Format("
select*fromUserInfowherename='
%s'
andpassword='
"
username,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.Close();
//关闭记录集
m_database.Close();
//关闭数据库
}
else//如果没有正确打开数据库
MessageBox("
不能打开数据库"
}}}
修改密码按键
voidCDlgAddUser:
UpdateData();
//判断新密码是是为空
if(m_add_user_password.IsEmpty()||m_add_confirm_password.IsEmpty())
MessageBox("
密码不为空"
}
else
if(m_add_confirm_password!
=m_add_user_password)
两次输入密码不一致,请重新输入新密码"
m_add_confirm_password.Empty();
m_add_user_password.Empty();
UpdateData(FALSE);
else
CDialog:
添加员工基本信息
voidCCase1View:
OnAddBasicinfo()
Addyourcommandhandlercodehere
m_dlgBasicInfo.m_addFlag=true;
m_dlgBasicInfo.m_editFlag=false;
//----------//调用“员工基本信息管理”对话框
if(IDCANCEL==m_dlgBasicInfo.DoModal())
return;
//-------//新的员工基本信息写入数据库
CStringstrSexInfo;
if(m_dlgBasicInfo.m_sex==0)
strSexInfo="
男"
;
elseif(m_dlgBasicInfo.m_sex==1)
女"
请选择员工性别"
if((m_dlgBasicInfo.m_str_id.IsEmpty())||(m_dlgBasicInfo.m_str_name.IsEmpty()))
员工编号和姓名不能为空"
CStringstrSQL;
strSQL.Format("
INSERTINTObasicInfo(id,name,sex,home,birthday,phone_number,status,address)VALUES('
'
)"
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_dlgBasicInfo.m_str_status,
m_dlgBasicInfo.m_str_address);
m_Db.ExecuteSQL(strSQL);
AfxMessageBox("
员工基本信息添加完毕!
strSQL="
select*frombasicInfo"
DrawBasicInfoList(strSQL);
}}
员工简历信息按键
OnAddResume()
m_dlgResume.m_addFlag=true;
m_dlgResume.m_editFlag=false;
//----------------------------------------------------------------------------------
//打开“员工简历管理”对话框
if(IDCANCEL==m_dlgResume.DoModal())
//新的简历信息写入数据库
if((m_dlgResume.m_str_id.IsEmpty())||(m_dlgResume.m_str_n