数据库课程设计人事管理系统文档格式.docx
- 文档编号:18520498
- 上传时间:2022-12-18
- 格式:DOCX
- 页数:16
- 大小:141.82KB
数据库课程设计人事管理系统文档格式.docx
《数据库课程设计人事管理系统文档格式.docx》由会员分享,可在线阅读,更多相关《数据库课程设计人事管理系统文档格式.docx(16页珍藏版)》请在冰豆网上搜索。
三、系统设计
3.1设计思想
尽量采用学校现有软硬件环境,及先进的管理系统开发方案,从而达到充分利用学校现有资源,提高系统开发水平和应用的目的。
1.系统应符合学校人事管理的规定,满足学校日常人事管理工作需要,并达到操作过程中的直观、方便、实用、安全等要求。
2.系统采用C/S体系结构,Client(客户端)负责提供表达逻辑、显示用户界面信息、访问数据库服务器;
Server(服务器端)则用于提供数据服务。
系统分析等前期工作应尽量详细完善,以便学校以后体系结构的改变,对于一些安全性要求不高的信息可以方便地采用Brower/Server的方式进行访问。
3.系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充、维护。
4.系统应具备数据库维护功能,及时根据用户需求进行数据的添加、删除、修改、备份等操作。
3.2系统功能分析
该系统需要完成如下功能:
1.员工各种信息的输入,包括员工的基本信息、学历信息、婚姻状况、考勤信息、工资信息。
2.员工各种信息的修改。
3.对于转出、辞职、退休员工信息的删除。
4.按照某种条件,查询统计符合条件的员工信息。
5.对查询、统计的结果打印输出。
6.人事系统的使用帮助。
3.3系统总体功能模块设计
系统总体功能模块包括员工基本情况、工作部门信息、员工职称信息、员工婚姻状况、员工学历信息、员工考勤管理、员工工资管理等7个模块,其模块的结构图如下:
四、数据库设计
数据库结构设计的好坏将直接对应用系统的效率以及与实现的效果产生影响,好的数据库结构设计会减少数据库的存储量,数据的完整性和一致性比较高,系统具有较快的响应速度等等。
4.1数据库需求分析
1.员工基本情况。
包括的数据项有员工号、员工姓名、性别、身份证号、生日、籍贯、民族、政治面貌、血型、家庭住址、联系电话。
2.工作部门信息。
包括的数据项有部门号、部门名称、部门地址。
3.员工职称信息。
包括的数据项有职称号、职称名称。
4.员工婚姻状况。
包括的数据项有员工号、爱人代号、爱人姓名、爱人籍贯、爱人民族、出生日期、工作单位、政治面貌、工作职称。
5.员工学历信息。
包括的数据项有员工号、学位证书编号、学历、专业、毕业时间、毕业院校。
6.员工考勤信息。
包括的数据项有员工号、员工姓名、日期,本月天数,公休假天数,应出勤天数,请假,节假日加班,其它加班。
7.员工工资信息。
包括的数据项有员工号,姓名,底薪,补贴,奖金,加班费,代扣养老金,代扣医疗保险,代扣住房公积金,所得税,实发工资。
4.2数据库概念结构设计
根据以上分析规划出的实体有:
员工实体、部门实体、职称实体、爱人实体、学历实体、考勤实体、工资实体。
员工实体E-R图
部门实体E-R图
职称实体E-R图
爱人实体E-R图
学历实体E-R图
考勤实体E-R图
工资实体E-R图
总体E-R图
4.3数据库逻辑结构设计
1.E-R图转化为关系模型(黑色直下划线表示主键)
员工(员工号、员工姓名、性别、身份证号、生日、籍贯、民族、健康状况、政治面貌、血型、家庭住址、联系电话)
部门(部门号、员工号、部门名称、部门地址、参加工作时间)
职称(职称号、员工号、职称名称)
爱人(爱人代号、员工号、爱人姓名、爱人籍贯、爱人民族、出生日期、结婚时间、工作单位、政治面貌、工作职称)
学历(学位证书编号、员工号、学历、专业、毕业时间、毕业院校)
考勤(员工号、日期、员工姓名、本月天数、公休假天数、应出勤天数、请假、节假日加班、其它加班)
工资(员工号,姓名,底薪,补贴,奖金,加班费,代扣养老金,代扣医疗保险,代扣住房公积金,所得税,实发工资)
2.各关系模型的表
表一EMPLOYEE员工表
列名
数据类型及长度
可否为空
说明
ENO
CHAR(6)
NOTNULL
员工号(主键)
ENAME
VARCHAR(10)
NULL
员工姓名
EGENDER
VARCHAR
(2)
性别
EBIRTHDAY
DATE
出生日期
EHOMETOWN
VARCHAR(8)
籍贯
ENATION
民族
EID
CHAR
(2)
身份证号
EHEALTH
VARCHAR(20)
健康状况
EZZMM
VARCHAR(4)
政治面貌
EBLOOD
血型
EHOMEADRESS
家庭住址
ETELENO
CHAR(10)
联系电话
表二DEPARTMENT部门表
员工号(外键)
DNO
部门号(主键)
DNAME
部门名称
DADD
部门地址
DTIME
参加工作时间
表三FUNCTION职称表
FNO
职称号(主键)
FNAME
职称名称
表四MARRIAGE婚姻表
LNO
爱人代号(主键)
LNAME
爱人姓名
LHOMETOWN
爱人籍贯
LNATION
爱人民族
LBIRTHDAY
MARRIAGEDATE
结婚时间
LCOMPANY
工作单位
LZZMM
LJOB
工作职称
表五SCHOOL学历表
DEGREENO
CHAR(15)
学位证书编号(主键)
XL
学历
MAJOR
专业
BYDATE
毕业时间
BYSCHOOL
毕业院校
表六CHECKIN考勤表
EDATE
日期
EDAYS
CHAR(3)
本月天数
ERDAY
公休假天数
ETDAY
应出勤天数
ELEAVE
请假
EOVER1
节假日加班
EOVER2
其它加班
表七PAYS工资表
LEASTPAYS
INT
底薪
BUTIE
补贴
PRIZE
奖金
DOUBLINGPAYS
加班费
DKANNUITY
代扣养老金
DKYLINSURANCE
代扣医疗保险
DKZFGJJ
代扣住房公积金
INCOMETAX
所得税
FACTPAYS
实发工资
五、数据库源码
5.1建立数据库MM(men_managementsystem人事管理系统)
createdatabasemm
on
(name=mmdat,
filename='
E:
\Study\SQL\mydata\mmdat.mdf'
size=100,
maxsize=300,
filegrowth=10)
logon
(name=mmlog,
\Study\SQL\mydata\mmdat.ldf'
size=50,
maxsize=150,
filegrowth=10%)
5.2建立了数据库的各基本表及各表的主、外键设置
建立EMPLOYEE员工表:
usemm
go
createtableemployee
(enochar(6)notnullprimarykey,--员工号
enamevarchar(10),--员工姓名
egendervarchar
(2),--性别
ebirthdaydatetime,--出生日期
ehometownvarchar(8),--籍贯
enationvarchar(10),--民族
eidchar
(2),--身份证号
ehealthvarchar(20),--健康状况
ezzmmchar(4),--政治面貌
ebloodvarchar
(2),--血型
ehomeadressvarchar(10),--家庭住址
etelendchar(10))--联系电话
1.建立DEPARTMENT部门表
createtabledepartment
(enochar(6)notnull,--员工号
dnochar(6)notnullprimarykey,--部门号
dnamevarchar(10),--部门名称
daddvarchar(20),--部门地址
dtimedatetime,--参加工作时间
foreignkey(eno)referencesemployee(eno))
2.建立FUNCTION职称表
createtable[function]
(fnochar(6)primarykey,--职称号
fnamevarchar(10),--职称名称
enochar(6),--员工号
foreignkey(eno)referencesemployee(eno))
3.建立MARRIAGE婚姻表
createtablemarriage
lnochar(6)notnullprimarykey,--爱人代号
lnamevarchar(10),--爱人姓名
lhometownvarchar(8),--爱人籍贯
lnatiomvarchar(10),--爱人民族
lbirthdaydatetime,--出生日期
marriagedatedatetime,--结婚时间
lcompanyvarchar(20),--工作单位
lzzmmvarchar(4),--政治面貌
ljobvarchar(10),--工作职称
4.建立SCHOOL学历表
createtableschool
(enochar(6),--员工号
degreenochar(15)primarykey,--学位证书编号
xlchar(6),--学历
majobvarchar(10),--专业
bydatedatetime,--毕业时间
byschoolvarchar(20),--毕业院校
5.建立CHECKIN考勤表
createtablecheckin
(enochar(6)notnull,--员工号
enamevarchar(10),--员工名称
edatedatetime,--日期
edayschar(3),--本月天数
erdaychar(3),--公休假天数
etdaychar(3),--应出勤天数
eleavechar(3),--请假
eover1char(3),--节假日加班
eover2char(3),--其它加班
6.建立PAYS工资表
createtablepays
leastpaysintnotnull,--底薪
butieint,--补贴
prizeint,--奖金
doublingpaysint,--加班费
dkannuityint,--代扣养老金
dkulinsuranceint,--代扣医疗保险
dkzfgjjint,--代扣住房公积金
incometaxint,--所得税
factpaysint,--实发工资
5.3对各表的完整性等进行设置
对employee表中的egender列进行核查约束:
altertableemployee
addcheck(egender='
男'
oregender='
女'
)
对pays表中的leastpays列进行默认值设置:
createdefaultdef_leastpays
as'
800'
sp_bindefault'
def_leastpays'
'
pays.leastpays'
对employee表中的enation列进行默认值设置
createdefaultdef_enation
汉'
def_enation'
'
employee.enation'
对pays表中的factpays进行索引设置:
go
createuniqueclusteredindexfactpays_indonpays(factpays)
在employee和pays表上建立视图:
createviewempay_view
as
selectemployee.eno,employee.ename,pays.factpays
fromemployee,pays
whereemployee.eno=pays.eno
建立存储过程
ifexists(selectnamefromsysobjects
wherename='
worker'
andtype='
p'
)
dropprocedureworker
createprocedureworker
selectj.eno,j.ename,x.dno,x.dname,y.fno,y.fname
fromdepartmentasxjoinemployeeasjonj.eno=x.enojoin[function]asyonx.eno=y.eno
建立触发器
createtriggertr_ehealth_updateonemployee
forupdate
ifupdate(ehealth)
print'
数据已更新'
else
print'
数据没有更新'
六、运行平台
SQLSERVER2000个人版
Windowsxp操作系统
Transact_SQL语言
具体操作如下:
首先进入SQLServer2000,打开服务管理器,然后进入企业管理器,查询分析器,弹出一窗口,然后输入Transact-SQL语句,执行即可!
七、总结
这次数据库课程设计经历了从选题、目录、摘要、前言、系统设计、需求分析到E-R图设计,再到关系模型设计,最后建立数据库。
在这其中我们组的每个成员通过查阅相关书籍,分工合作,进行了很多次大大小小的扩充和修改,使数据库结构和内容更趋于完善。
通过这次课程设计,我收益颇丰,感受深刻。
虽然我们这次做的设计可能不够好,但是为我对以后的数据库设计打下了很好的基础。
在做这次课程设计的过程中,我们每个人都很努力,虽然当中我们有过争执与吵闹,但是最终我们达成了共识并且顺利地完成了此次工作。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 课程设计 人事管理系统