《数据库原理》-公司雇员管理系统_第1页
《数据库原理》-公司雇员管理系统_第2页
《数据库原理》-公司雇员管理系统_第3页
《数据库原理》-公司雇员管理系统_第4页
《数据库原理》-公司雇员管理系统_第5页
免费预览已结束,剩余25页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据库原理课程设计报告设计题目:公司雇员管理系统专 业:信息管理与信息系统计算机与数据科学学院2019年01月07日数据库原理课程设计报告目录目 录第1章概述31.1选题的背景与意义3第2章系统功能设计42.1 系统总体结构设计图42.2 系统功能模块42.2.1 员工管理42.2.2 管理人员管理42.2.3 个人经历管理 42.2.4 家庭关系管理 42.2.5 部门管理42.2.6 职位调动管理42.2.7 出勤信息管理52.2.8 刷卡机管理52.2.9 请假记录管理52.2.10 奖惩记录管理52.2.11 工资管理52.3 员工功能模块52.3.1 员工查询子系统52.3.2 管理

2、员查询子系统52.3.3 员工信息管理子系统62.3.4 部门信息管理子系统62.3.5 信息变更子系统62.3.6 工资管理子系统6第3章数据库设计73.1 需求分析73.2 概念结构设计103.2.1 局部 E-R 图103.2.2 全局 E-R 图123.3 逻辑结构设计123.4 物理结构设计133.4.1 存储结构设计 133.4.2 存取方法设计133.4.3 索引的建立 133.5 数据库实施143.5.1 数据库、表建立的代码及截图 143.5.2 外键的设置203.5.3 Check 约束213.5.4 触发器设计 213.5.5 存储过程设计 233.5.6 视图设计23第

3、4章结束语25参考文献262数据库原理课程设计报告第2章第1章概述1.1选题的背景与意义随着社会的发展,科技的不断进步, 使得企业的信息化管理出现了新方向。一个现 代化的企业想要生存和发展,必须跟上信息化的步伐,用先进的信息化技术来为企业的 管理节约成本。对企业的员工信息管理当下已是一个十分重要的事情,在此形势下, 企 业职工信息管理系统,可应用于大部分的事业单位,管理人员可查询员工的基本信息、 奖罚信息、培训信息、薪资信息、部门信息等相关信息并可对其进行维护,普通员工可 在登录后进行相应查询等操作。随着科学技术的不断发展,计算机科学日渐成熟,其强大功能已为人们所深刻认识, 它已进入人类社会的

4、各个领域并发挥着越来越重要的作用。采用计算机进行信息化管理 已成为衡量企业管理科学化和现代化的标志。而职工信息管理的全面自动化、信息化则 是其中重要的组成部分。职工信息管理的好坏对于企业的决策者和管理者来说都至关重 要,在很大程度上影响着企业的经济效益和社会效益,因此,具有一定的现实意义。长久以来人们使用传统人工的方式进行职工信息管理,这种管理方式存在着诸多缺 点,如:工作量大、效率低、保密性差,另外时间一长,将产生大量的文件和数据,着 对于查找、更新和维护都带来了不少困难。传统的管理方法已经不能适合企业职工信息 管理的需求,因此需要一个功能完善的信息管理系统。职工信息管理系统是典型的信息 管

5、理系统,具开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方 面。对于前者要求建立起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功能完备,易使用等特点。本职工信息管理系统的一些基本功能和组成情况 包括系统的需求分析、概念结构设计、逻辑结构设计、数据库实施等步骤。要求能够极 大地提高人事管理的效率,优化企业的人力、物力,降低企业的管理成本。5第2章系统功能设计2.1 系统总体结构设计图图2.12.2 系统功能模块2.2.1 员工管理主要应用于对员工在该单位基本信息的管理,可以执行对某员工的增加、删除、 修改信息的功能等。2.2.2 管理人员管理用于对相应的系统管理

6、人员的帐号、密码等基本信息的管理。2.2.3 个人经历管理可对各个员工的过往经历汇总并记录留档,完善员工在该单位中的基本信息,增加单位对员工个人经历的了解。2.2.4 家庭关系管理可对各个员工的家庭人员以及关系进行汇总并记录留档,完善员工在该单位中的基本信息,增加单位对员工家庭情况的了解。2.2.5 部门管理主要用于分别管理各个部门的基本信息,以及部门的实际情况统计。2.2.6 职位调动管理负责记录单位中人员的职位调动信息的记录、统计、管理等,并当更新职位调动信息的时候,将相应的员工、部门信息进行修改。数据库原理课程设计报告第4章2.2.7 出勤信息管理记录员工每一次的刷卡出勤的相关信息,做好

7、统计工作。2.2.8 刷卡机管理管理出勤是所需要的出勤记录刷卡机。2.2.9 请假记录管理用于记录员工的请假信息,包括员工编号、请假时间、销假时间、请假天数等信息2.2.10 奖惩记录管理用于记录员工的奖惩信息,包括员工编号、奖惩类型、奖惩金额、奖惩时间等信息2.2.11 工资管理用于统计记录员工的工资信息,基本工资、将罚金、时间等。2.3 员工功能模块图2.2公司雇员,管理系统管理员杳询子系统员工瓷询子系统2.3.1 员工查询子系统可供员工查询与自己相关的姓名、职位、部门等基本信息,以及各个时期的工资、 奖金罚款的发放情况。2.3.2 管理员查询子系统可供管理员查询所管理员工的全面信息,具有

8、管理权限。2.3.3 员工信息管理子系统当员工自身的基本情况,如家庭关系变更时,可由员工自行进行修改相关信息。2.3.4 部门信息管理子系统部门的管理员可对该部门的相关信息进行管理,执行查询、增加、删除、修改等操 作。2.3.5 信息变更子系统员工提交相应修改信息,则将所有该员工的相关信息进行修改。2.3.6 工资管理子系统对奖罚金额及基本工资、结算工资进行管理。6数据库原理课程设计报告第3章第3章数据库设计73.1需求分析员工员工编号C4)姓名chrflO)性别char21出生日期datetime学历varchar(32j身份证号varchar(321民族yarch0r(L6)职称chan(

9、10)部门号char(4;职务char132)查询。添加O删除G修改O个人经历年份datetime员工编号charfJ学习轻历varchar(50)任职经历varchar50) nnn vasni vnn vi.查询()添加)删除O修改()图3.2图3.1部门部门号chjr4>部门名charflO)领导人员char4)员二人软idt直询O添加()删除()修改()家庭关系关系编号chart 10)员工编号char14亲属关系ehar( 50)亲属姓名char(10查询()添加()删除()修改()图3.4图3.3数据库原理课程设计报告第4章职位蜩动调动编号chjr(6)员工编号chan4调动

10、前服务chartlO)调动后职务char(10)调动前部门号charffl)调动后部门号char4)调动日期datelime批复日期dstelime调动原因三1 rtt曳口5。)查询()添加()删除()修改()出勤出勤号chart理员工褊号charts)上班日期datetime上班时间datetime下班时间datetimeHRHRmRHRmRflRMRflRT刷卡机号char(J)叠询()添加()删除。修改()16图3.5图3.6管理人员管理员账号ehar(4)职工编号char(4)密码char(6)级别char(4)百询)添加O删除()修改()刷卡机刷卡机号char(4)隆询()摩加O删除

11、()修改()图3.7图3.8奖惩记录奖惩编号char(&)员工编号char(4奖挺类型char(4)奖惩金题money奖惩日期dale Li me批复部门号char()枇复日期datetime褐美小QiiJi*奖惩原因varcharfSOlAAJUUWAJU-UJU.Br查询()添加()删除Q修改0工资工资编号chan6)员工编号charf4)基本工簧money罚款moniey奖金rnooiey结算工资money起始时间datetimeVIVBVrWWHVBWVIV截止时间datetime发信日期datetime查询()密加()删除()修改)图3.9图 3.10请假记录请假编号char

12、(6)员工编号char(4)请假时间datetimeBVBVWVfVBVBVSVWVr铺假时间datetime,in«nni,iiniHninr请假天数int审批人编号char(4)咨询O添加S删除()修改O图 3.113.2概念结构设计3.2.1局部E-R图姓名性别出生日期员工编号学历身份证号民族职称部门号职务年份关系编号部门号图 3.12员工编号学习经历个人经历图 3.13员工编号亲属关系冢庭关系图 3.14部门名部门图 3.15领导人员用动前善门号胆动后部口号即、位谓动图 3.16任职经历亲属姓名员工人数调引H期批复日期胆动原因罚款基本工贽员工股工资工资报号图 3.17职工褊号

13、管理员韩号_管理人员图 3.18刷卡机结算工资起蜡时阊;低止时间发信日期密码转别刷卡机号图 3.19上班日期上班时间员工编号/出勤.出勤号图 3.20请陋胴制嫡间员工编号请假记录情胆闻号图 3.211-' 奖涯金奖惩口期(奖惩类型员工编导)_/. 奖惩记录奖惩斓号)-图 3.22刷卡机号请假天救用批人编号批复部门号二-_ 二_ - - 批复日期'美檄血3.2.2全局E-R图1匚赁部门图 3.223.3逻辑结构设计1、员工(员工编号,姓名,性别,出生日期,学历,身份证号,民族,职称,部 门号,职务)2、个人经历(年份,员工编号,学习经历,任职经历)3、家庭关系(关系编号,员工编号

14、,亲属关系,亲属姓名)4、管理人员(管理员账号,职工编号,密码,级别)5、出勤(出勤号,员工编号,上班日期,上班时间,下班时间,刷卡机号)6、刷卡机(刷卡机号)7、部门(部门号,部门名,领导人员,员工人数)8、职位调动(调动编号,员工编号,调动前职务,调动后职务,调动前部门号, 调动后部门号,调动日期,批复日期,奖惩原因)9、奖惩记录(奖惩编号,员工编号,奖惩类型,奖惩金额,奖惩日期,批复部门 号,批复日期,奖惩原因)10、请假记录(请假编号,员工编号,请假时间,销假时间,请假天数,审批人编 号)11、工资(工资编号,员工编号,基本工资,罚款,奖金,结算工资,起始日期, 截止日期,发信日期)3

15、.4 物理结构设计3.4.1 存储结构设计公司雇员管理系统是一个大型复杂的计算机网络信息系统,采用基于浏览器/服务器(B/S),客户端/服务器(C/S)混合的应用体系结构来建设教务管理系统。数据库 管理系统采用Microsoft 公司推出的SQL Server 2000 或以上版本,并用 SQL进 行数据库的建立和数据库中数据的维护和查询。3.4.2 存取方法设计数据库系统是多用户共享的系统,对同一个关系要建立多条存储路径才能满足多用 户的多种应用要求。对于公司雇员管理系统来说,为了提高某些属性(如:员工编号,管理员帐号,员工基本信息等)的查询速度,可以选择聚簇存取的方法,即把这些属性 上具有

16、相同值的元组集中放在连续的物理块上。这样在查询某个学院或是查询某个专业 或某学年等的学生成绩或选课等时就会大大提高查询速度。因此,该系统中选择聚簇存 取方法。3.4.3 索引的建立表名主键建立唯一性索引员工(员工编号)create index 员工 _学历 _index on员工(学历)一 一个人经历(年份,员工编号)create index 个人经历_任职经历_indexon个人经历(任职经历)一一家庭关系(关系编号)create index 家庭关系_亲属关系_index on家庭关系(亲属关系)管理人员(管理员帐号)create index管理人员 _indexon管理人员(级别)一出勤

17、(出勤号)create index出勤上班 日期 _indexon出勤(上班日期)刷卡机(刷卡机号)create index 刷卡机 _index on刷卡机(刷卡机号)部门(部门号)create index 部门领导人员 index数据库原理课程设计报告第4章on部门(领导人员)职位调动(调动编会)create index职务调动 调动前职务_indexon职位调动(调动前职务)奖惩记录(奖惩编号)create index 奖惩记录奖惩类型_index on奖惩记录(奖惩类型)请假记录(谓假编会)create index 请假记录_请假天数_index on请假记录(请假天数)工资(工资编号

18、)create index工资基本工资 _indexon工资(基本工资)3.5 数据库实施3.5.1 数据库、表建立的代码及截图建立相应数据库系统create database 公司雇员管理系统onprimary(name='公司雇员管理系统_data',作业 公司雇员管理系统_data.mdf,size=20MB,maxsize=100,filegrowth=5)log on(name='公司雇员管理系统_log',作业公司雇员管理系统_log.ldf,size=20MB,maxsize=100,filegrowth=20)create table 员工(员工

19、编号 char(4) primary key,姓名 char(10) not null,性另Ichar(2) check( 性别 in('男','女'), 出生日期datetime,学历 varchar(32) not null,身份证号 varchar(32) not null,民族 varchar(16) not null,职称 char(10),部门号cha4)2、建立个人经历表create table 个人经历(年份 datetime,员工编号char(4),学习经历varchar(50),任职经历varchar(50),primary key( 年份,

20、员工编号),foreign key( 员工编号)references )员工(员工编号)3、建立家庭关系表create table家庭关系(关系编号 char(10) primary key,员工编号 char(4) not null,亲属关系char(4),亲属姓名char(10),亲属性别char(2),foreign key( 员工编号)references 员工(员工编号) )4、建立管理人员表create table管理人员(管理员账号 char(4) primary key,职工编号 char(4) not null,密码 char(6) not null,级别chaK4)chec

21、k(级别in ('管理员','系统管理员'), foreign key( 职工编号)references员工(员工编号)5、建立出勤表create table 出勤(出勤号 char(6) primary key,员工编号 char(4) not null,上班日期datetime,上班时间datetime,下班时间datetime,刷卡机号char(4),foreign key(员工编号)references员工(员工编号),foreign key( 刷卡机号)references刷卡机(刷卡机号),) fWTHBir -nJ r- » H UnrT

22、! ij i- '« Sdi " r - i IMm -I pi IMF 不 1 es - i. X.I3HHI M.-rLUv ,|,fl aurMB方引用2 青良。e* : Bm,一工二"J : T J®1-2+1西萄贵* *- RIE fil+高,“c6、建立刷卡机表create table 刷卡机刷卡机号 char(4) primary key7、建立部门表create table 部门部门号 char(4) primary key, 部门名 char(10) not null, 领导人员 char(4) not null, 员工人数in

23、t29)8、建立职位调动表create table职位调动(调动编号 char(6) not null, 员工编号 char(4) not null, 调动前职务char(10), 调动后职务char(10), 调动部门号char(4) not null, 调动日期datetime,批复日期datetime,员工(员工编号), 部门(部门号),调动原因varchar(50),foreign key( 员工编号)referencesforeign key( 调动部门号)references)员工(员工编号), 部门(部门号)员工(员工编号)9、建立奖惩记录表 create table奖惩记录(奖

24、惩编号 char(6) not null primary key, 员工编号 char(4) not null, 奖惩类型char(4),奖惩金额money, 奖惩日期datetime, 批复部门号char(4), 批复日期datetime, 奖惩原因varchar(50), foreign key( 员工编号)references foreign key( 批复部门号)references )一。T ' r u J.a 一 * r - ' ,lTV, Mcr.K Ki星!*3 i.WR MKT . fwt « IV m IHi ! B.I3II WKIH温 Im,二

25、由 Mllw4*v4« 二耳.0- BH t-tBIW, £H44MUH# 军T*fe>Wl10、建立请假记录表create table请他B己录(请假编号 char(6) not null primary key, 员工编号 char(4) not null, 请假时间datetime,销假时间datetime,请假天数int,审批人编号char(4),foreign key( 员工编号)referencesri-ciMia iuuAH T.VtL '-.l|+: >> j 4Tunim up " : fl* Esueu-u fl f1

26、1、建立工资表create table 工资(工资编号 char(6) primary key,员工编号 char(4) not null,基本工资 money not null,罚款money,奖金money,结算工资money,起始时间datetime,截止时间datetime,发信日期datetime,foreign key( 员工编号)references员工(员工编号)* E 丁 J 1 >1: »- I- ! r i fi-iMi- <.«11 tw-j* X, M”AH 1 ff KW.始,t q i汨.,_ r Hl Mrmw"&quo

27、t;PiM二/叫)JU3.5.2 外键的设置1、将个人经历表中,将“员工编号”设置为表的外键2、在家庭关系中,将“员工编号”设置为表的外键3、在管理人员表中,将“员工编号”设置为表的外键4、在出勤表中,将“员工编号”设置为表的外键,再将“刷卡机号”设置为外键5、在职位调动表中,将“员工编号”设置为表的外键,再将“部门”号设置为外键6、在奖惩记录表中,将“员工编号”设置为表的外键7、在请假记录表中,将“员工编号”设置为表的外键8、在工资等表中的将“员工编号”设置为表的外键3.5.3 Check 约束1、员工表中,将性别进行check约束:check(性别 in('男','

28、女')2、奖惩记录表中,将奖惩类型进行check约束:check(奖惩类型in('奖',惩')3.5.4 触发器设计1、在职位调动表中,建立更改员工职务的触发器create trigger trigger_职称修改 on 职位调动 for insertasdeclare new_员工编号 char(10),new_ 调动后职务 char(10)select new_员工编号=员工编号,new啰I动后职务=调动后职务from insertedupdate员工set职称=ne硒动后职务where员工编号=new_工编号2、在员工表中,建立插入或删除员工信息时,修改其

29、相应部门的人数create trigger trigger_增力口员工 on 员工 for insertasdeclare new_l!B门号 char(4),new_ 员工人数 intselect new_ 部门号=#B 门号 from insertedselect new_员工人数=员工人数from 部门update部门set员工人数=new_工人数+1 where部门号=neW_门号create trigger trigger_减少员工 on 员工 for deleteasdeclare new_l!B门号 char(4),new_ 员工人数 intselect new_ 部门号=#B

30、门号 from deletedselect new_员工人数=员工人数from 部门update部门set员工人数=new_工人数-1 where 部门号=new_门号3、在职位调动表中,当插入信息时,修改调动部门的人数信息create trigger trigger_部门人数修改 on 职位调动 for insertasdeclare newj!fF部门号 char(10),new_ 现部门号 char(10),new_ 调动后部门号 char(4),new_员工人数int,new_调动前部门号char(4)select new_现部门号=调动后部门号,new面部门号=调动前部门号from

31、insertedselect new_员工人数=员工人数from 部门update部门set员工人数=new_工人数+1 where部门号=new_部门号update部门set员工人数=new_工人数-1 where 部门号=neW_l!B门号4、在奖惩记录表中,更新奖惩信息时,修改工资表中的对应的奖金、罚款create trigger trigger_ 奖金 on 奖惩t己录 for insert asdeclare 奖金 money,奖惩类型 char(2), 员工编号 char(4)select 奖金=奖惩金额,Q工编号=员工编号,惩类型=奖惩类型from inserted begini

32、f(奖惩类型='奖')update工资set奖金=旗金where员工编号二欧工编号endcreate trigger trigger_ 罚款 on 奖惩t己录 for insert asdeclare 罚款 money,奖惩类型 char(2), 员工编号 char(4)select 罚款=奖惩金额,K工编号=员工编号,惩类型=奖惩类型from inserted beginif(奖惩类型='罚')update工资set 罚款=3款where员工编号=侬工编号 end5、在工资表中,奖金、罚款发生变动时,更新相应的结算工资create trigger dbo.tr

33、igger_update_a on dbo.工资for updateas beginif UPDATE(罚款)update工资set结算工资=基本工资-罚款+奖金 from 工资endcreate trigger dbo.trigger_update_a on dbo.工资for updateas beginif UPDATE(奖金)update工资set结算工资=基本工资-罚款+奖金from 工资end3.5.5存储过程设计1、建立“查询某部门人数”存储过程CREATE procedure c_ 查询某部门的人数FB门号 char(4), 人数 int output asselect 人数二COUNT(工.员工编号)from 员工where 部门号=部门号2、建立“查询某部门某职称人数”存储过程CREATE procedure c_ 查询某部门某职称人数FB门号 char(4), 职称 char(10), 人数 int output asselect 人数二COUNT(工.

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论