下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、课程设计报告课程设计名称:数据库原理与应用系部:二系学生姓名:韦敏班级:10 信息与计算科学学号:20100202111成绩:指导教师:陈林开课时间:2012-2013学年1 学期一设计题目:人事管理系统二主要内容: 人事管理系统主要是针对企业单位内部组织结构和员工信息的管理,本系统的主要功能为:员工信息管理,部门信息管理,系统用户管理,故我们需要实现如下功能的建设:1)员工信息管理:每个部门的员工各种信息的添加,修改,删除,包括员工的基本信息、 学历信息、 职称等信息, 以及查看符合各种条件的员工部分与总体信息;2)部门信息管理:查看部门信息,包括部门编号、部门名称、部门经理、部门简介等信息
2、;具有更新部门的功能。3)系统用户管理:查看系统用户信息,包括用户名和用户类型(系统管理员和普通用户)等信息 ;三具体要求1. 课程设计的内容独立自主完成,课程设计报告内容完整、格式规范、排版整洁美观;2. 后台数据库采用 MS SQL SERVER 2005,前台界面语言不限,编写的程序代码,须有较详细的注释说明;四进度安排课程设计安排:16 周星期一讲解课程设计的内容,安排每一天的具体任务,分配并熟悉题目;星期二需求分析:给出系统的功能需求、性能需求,并绘制DFD 和 DD;星期三概念结构设计: 绘制实体属性图 (可选),局部 ER 图和全局 ER 图;星期四逻辑结构设计:转换、优化;星期
3、五逻辑结构设计:外模式设计17 周星期一物理结构设计及数据库实施;星期二应用程序编制调试、整理课程设计报告;星期三应用程序编制调试、整理课程设计报告,并检查;星期四根据反馈结果修改课程设计报告;星期五课程设计答辩,交材料;上交的材料:课程设计的电子稿、打印稿、源码(SQL 代码和程序代码)五成绩评定考核方法 :现场验收(占50%),课程设计报告(占50%)。考核内容 :学习态度(出勤情况,平时表现等)、方案合理性、各阶段的图表与程序编制质量、设计报告质量。成绩评定 :优,良,中,及格,不及格。特别说明 :( 1)如发现抄袭,按照不及格处理。( 2)材料不齐的,考核等级降一级。电子稿件以压缩文件
4、的形式上交,压缩命名为: 11 位学号 +姓名正文撰写包含的内容:1、需求分析2、概念结构设计3、逻辑结构设计4、物理结构设计5、数据库实施及应用程序编制6、心得体会7、参考资料正文 :题目:人事管理系统第一章系统概述本文按照数据库系统设计的基本步骤, 采取了事先进行需求分析, 得出对应的数据流图和数据字典,再进行概念结构设计,逻辑结构设计和物理结构设计,最后通过运行和测试,成功完成了一个小型的人事管理系统的设计。最终,在 SQL SEVER 2005 上运行的人事管理系统,可以实现:员工各种信息的管理,员工所在部门信息的相关管理。第二章需求分析2.1 需求分析通过对当前人事管理系统的相关调查
5、, 确定所做的人事管理系统功能的基本要求如下:员工各种信息的输入及修改, 包括员工的基本信息、 学历信息、职称等信息;员工所在的部门信息,包括部门名称、部门经理等信息;按照一定的条件,查询、统计符合条件的员工信息;包括每个员工详细信息的查询、按学历查询、按部门查询等,包括按学历、部门、参加工作时间等统计各自的员工信息;对于转出、辞职、辞退、退休员工信息的删除, 并更新相应部门的统计信息。2.2 功能分析人事管理系统主要是针对企业单位内部组织结构和员工信息的管理, 本系统的主要功能为:员工信息管理,部门信息管理,系统用户管理,故我们需要实现如下功能的建设:4)员工信息管理:每个部门的员工各种信息
6、的添加,修改,删除,包括员工的基本信息、 学历信息、 职称等信息, 以及查看符合各种条件的员工部分与总体信息;5)部门信息管理:查看部门信息,包括部门编号、部门名称、部门经理、部门简介等信息;具有更新部门的功能。6)系统用户管理:查看系统用户信息,包括用户名和用户类型(系统管理员和普通用户)等信息 ;2.3 系统数据流程图数据流图描述的是系统的逻辑模型, 图中没有任何具体的物理元素, 只是描绘信息在系统中流动和处理的情况。 因为数据流图是逻辑系统的图形表示, 即使不是专业的计算机技术人员也能容易理解。 数据流图里的符号也极为简单, 只有四个: 1)外部实体; 2)处理; 3)连线; 4)数据存
7、储。这四个符号也有两种。一种是 Yourdon & Coad 法,另一种是 Gane & Sarson 法。只是略有不同而已。在这篇论文中,我们使用 Microsoft Visio ,故使用 Gane & Sarson 法。所对应的四个符号如图 2.1 所示:数据流数据处理数据存储外部项图 2.1经过详细调查, 了解到企业单位人事管理系统的业务流程,在此基础上, 得出系统的逻辑模型,并用数据流图表示,情况如图2.2 ,图 2.3所示:人事信息人事信息系统管理员人事管理系统数据库系统图 2.2顶层数据流图员工信息D1员工档案P1员工员工情况员工用户身份档案管理P3管理员情
8、况管理员安全管理P2用户身份上级部门档案管理部门情况D3管理员记录D2 部门记录图 2.3 0层数据流图在上述人事管理系统数据流图中, 员工档案管理功能还没具体实现, 主要实现功能如图 2.4 所示:D1员工档案员工P1.1员工信息录入P1.2员工信息修改P1.4D5员工基本信息员工信息查询P4员工信息统计P1.5员工信息删除员工信息更D6新P1.3员工信息查看员工基本信D4息图 2.41层数据流图综合 0 层数据流,得出最终的数据流图,如图2.5 所示,D1员工档案员工P1.1P1.3信息录入员信息查看工情用户身份况P1.2信息修改D4员工相应信息P3用户情况用户安全管理P1.4信息查询P4
9、员工信息统计用D3 用户记录户身份P1.5P2部门信息部门信息删除员部门档案工管理员工变动情况信息D5 员工信息更新D2 部门记录图 2.5总数据流图2.4 系统数据字典人事管理系统数据流程图中, 数据信息和处理过程还需要通过数据字典来描述。在本文的数据字典中,主要对数据流图中的数据项、数据结构、数据流、数据存储和处理过程进行说明。2.4.1 数据项序号: 1名称: _name含义:员工姓名值域: varchar (10)序号: 2名称: _no含义:员工编号值域: varchar (5)序号: 3名称: _sex含义 : 员工性别值域: varchar (2)序号: 4名称: _callnu
10、mber含义:员工联系电话类型: int序号: 5名称: _education含义:员工学历值域: varchar (10)序号: 6名称: _position含义:员工职称值域: varchar (10)序号: 7名称: dpt_no含义:员工所在部门编号值域: varchar (4)序号: 8名称: _worktime含义:员工参加工作时间值域: varchar(20)序号: 9名称: _infor_change含义:工作变动值域: varchar (4)序号: 10名称: dpt_name含义:部门名称值域: varchar (20)2.4.2数据结构序号: 1序号: 11名称: dpt
11、_manager含义:部门经理编号值域: varchar (5)序号: 12名称: dpt_no含义:部门编号值域: varchar(4)序号: 13名称: dpt_count含义:部门人数类型: int序号: 14名称: dpt_abstract含义:部门简介值域: varchar (200)序号: 17名称: users_name含义:用户名值域: varchar (10)序号: 18名称: users_pwd含义:用户密码值域: varchar (16)序号: 19名称: _authority含义:用户权限值域: int名称:员工信息表组成: _name, _no, _sex, _cal
12、lnumber ,_education , _position, dpt_no ,_worktime , _infor_change ,序号: 2名称:部门信息表组成: dpt_name,dpt_manager,dpt_no , dpt_count , dpt_abstract序号: 3名称:登录信息表组成: users_name,users_pwd,_authority2.4.3数据流1)数据流名称:员工情况位置:员工 P1.1 ,员工 P1.2 。定义 : 员工情况 =姓名 +性别 +编号 +学历 +联系电话 +所在部门 +参加工作时间 +职称 。数据流量:根据公司的员工具体录用情况来确定
13、。说明:要对每一位被聘用的新员工进行唯一编号。2)数据流名称:员工变动情况位置: P1.5 D1,P1.5 D6。定义:员工变动情况 =员工号 +变动前职位 +变动原因 +调动日期。数据流量:根据公司的具体情况来确定。说明:员工号可以唯一确定一个员工变动情况。3)数据流名称:用户情况位置:用户 P3定义:用户身份 =员工编号数据流量:根据公司的具体情况来确定。说明:要对每一名用户建立唯一的账号。4)数据流名称:用户身份位置:安全管理 P1.1 ,P1.2 ,P1.3 ,P1.4 ,P1.5, P2定义:用户身份 = 管理员 | 员工 数据流量:根据公司的具体情况来确定。说明:不同的用户身份对应
14、不同的操作权限,对应着不同的安全级别。5)数据流名称:部门情况位置:部门部门情况定义 : 部门情况 =部门编号 +部门名称 +部门人数 +部门简介 +部门经理数据流量:根据公司的具体情况来确定。说明:部门编号是主码。2.4.4 数据存储1)D1员工档案输入: P1.1 ,P1.2 ,P1.5输出: P1.2 ,P1.3 ,P1.4 ,P1.5数据结构:员工档案 =姓名 +性别 +学历 +员工编号 +联系电话 +所在部门编号 +参加工作时间 +职称 +工作变动。数据量和存取频度:根据公司的具体规模情况来确定。存取方式:联机处理;检索和更新;以随机检索为主。说明:员工编号具有唯一性和非空性;性别只
15、能是男或女;主码是员工编号。2)D2部门记录输入: P2输出: P2数据结构:部门记录 =部门编号 +部门名称 +部门人数 +部门简介 +部门经理。数据量和存取频度:根据公司的具体规模情况来确定。存取方式:联机处理;检索和更新;以检索操作为主。说明:主码设为部门号。3)D3用户记录输入: P3输出: P3数据结构:用户记录 =员工编号 +管理员编号 +密码 +权限数据量和存取频度:根据公司的具体规模情况来确定。存取方式:联机处理;检索和更新;以更新操作为主。说明:主码设为管理员编号。4)D4员工相应信息输入: P1.4输出: P4数据结构:员工相应信息=员工编号 +学历 +联系电话 +所在部门
16、编号 +参加工作时间 +职称 +工作变动。数据量和存取频度:根据公司的具体规模情况来确定。存取方式:联机处理;检索和更新;以更新操作为主。说明:主码设为员工编号。5)D5员工信息更新输入: P1.5输出: P2数据结构:员工信息更新=员工编号 +职称 +工作变动 +所在部门编号。数据量和存取频度:根据公司的具体规模情况来确定。存取方式:联机处理;检索和更新;以更新操作为主。说明:主码设为员工编号。2.4.5数据处理1)处理过程编号: P1.1处理过程名:员工信息录入输入:员工输出:员工档案处理说明:根据员工基本信息员工进行信息录入,录入的结果存放到员工档案中。2)处理过程编号: P1.2处理过
17、程名:员工信息修改输入:员工,员工档案输出:员工档案处理说明:根据员工基本信息以及员工档案进行信息修改, 修改的结果存放到员工档案中。3)处理过程编号: P1.3处理过程名:员工信息查看输入:员工档案输出:员工档案4) 处理过程编号: P1.4处理过程名:员工信息查询输入:员工档案输出:员工相应信息5)处理过程编号: P1.5处理过程名:员工信息删除输入:员工档案输出:员工信息更新6)处理过程编号: P2处理过程名:部门档案管理输入: D5,部门信息输出:部门记录7)处理过程编号: P3处理过程名:安全管理输入:用户情况输出:用户记录第三章概念结构设计根据系统需求分析, 可以得出人事管理系统数
18、据库的概念模型 (信息模型),各类 E-R 图绘制如下:性别职称姓名所属部门编号员工工作变动学历联系电话参加工时间员工编号图 3.1员工实体图名称经理部门简介编号员工人数图 3.2部门实体图密码用户名权限用户图 3.3用户实体图第四章逻辑结构设计4.1 E-R 模型向关系模型的转换将人事管理系统的E-R 图转换为关系数据库的数据模型,其关系模式为:员工(姓名,性别,员工编号,联系电话,学历,职称,所在部门编号,参加工作时间,工作变动),其中,员工编号是主码,所在部门编号为引用“部门”关系模式的外码。部门(名称,经理,部门编号,简介, 员工人数),其中,部门编号是主码。4.2 数据模型的优化员工
19、关系模式中,各个属性间函数依赖关系:员工编号姓名员工编号联系电话员工编号学历员工编号职称员工编号所在部门编号员工编号参加工作时间员工编号工作变动此关系属于第三范式。部门关系模式中,各个属性间函数依赖关系:部门编号名称部门编号部门简介部门编号部门人数部门编号部门经理此关系属于第三范式。用户关系模式中,各个属性间函数依赖关系:用户名用户密码用户名权限此关系属于第三范式。4.3 设计外模式员工关系模式:员工(姓名,性别,员工编号,联系电话,学历,职称,所在部门编号,参加工作时间,工作变动) 。在此关系模式上建立了四个视图:员工 1(员工编号,姓名,学历)员工 2(员工编号,姓名,部门编号)员工 3(
20、员工编号,姓名 , 参加工作时间)员工 4(员工编号,姓名 , 工作变动)第五章数据库结构的物理结构设计数据库物理设计阶段的任务是根据具体计算机系统 (DBMS和硬件等 ) 的特点,为给定的数据库模型确定合理的存储结构和存取方法。所谓的“合理”主要有两个含义:一个是要使设计出的物理数据库占用较少的存储空间, 另一个对数据库的操作具有尽可能高的速度。主要体现在后者。数据库的物理结构设计大致包括:确定数据的存取方法、 确定数据的存储结构。5.1 确定数据的存取方法确定数据库的存取方法, 就是确定建立哪些存储路径以实现快速存取数据库中的数据。现行的 DBMS一般都提供了多种存取方法,如索引法、 HA
21、SH法等。其中,最常用的是索引法。 本课程设计也采用索引的存取方法。建立索引如下:(1)对表 员工 在属性列 员工编号 建立非聚簇索引(2)对表 部门 在属性列 部门编号 建立非聚簇索引5.2 确定数据的存储结构确定数据库的存储结构主要指确定数据的存放位置和存储结构, 包括确定关系、索引、日志、备份等的存储安排及存储结构, 以及确定系统存储参数的配置。将日志文件和数据库对象 ( 表、索引等 ) 分别放在不同的磁盘, 可以改进系统的性能,提高系统的安全性。 所以,系统应将日志文件和数据文件存放在不同磁盘上。第六章 数据库行为设计到目前为止,我们详细讨论了数据库的结构设计问题, 下面我们进行数据库
22、的行为设计。数据库行为设计一般分为如下几个步骤:1)功能分析2)功能设计3)事务设计4)应用程序设计与实现6.1 功能设计将人事管理系统的功能需求转化为总功能结构图, (此处不分管理员和员工)如下所示,人事管理系统员工信息管理部门信息管理员工信息录入员工信息查询员工信息修改员工信息删除员工信息查看员工信息统计图6.1总功能结构图第七章数据库实施及应用程序编制数据库实施阶段包括两项重要工作,一是加载数据,二是调试和运行程序。下面是具体实施。7.1 数据库实施7.1.1 加载数据如下所示:图 7.1 部门信息图 7.2 用户信息7.1.2 调试和运行程序如下:进入系统,如图7.3 所示:图 7.3
23、 登陆界面用户登录:输入用户名和密码,档案表中数据为:用户名为管理员,当输入有误时,情况如图7.4 :as,密码: as,权限如图 7.4输入正确时,如图7.5 :图 7.5 用户登陆成功单击确定,进入系统,拥有管理员权限,对各项需求功能实现如图7.6 所示:( a)(b)( c)(d)图 7.6 主界面功能图员工信息管理功能每个部门的员工各种信息的添加,修改,删除,包括员工的基本信息、学历信息、职称等信息, 以及查看符合各种条件的员工部分与总体信息; 需求实现如下:添加员工,如图7.7 所示:( a)(b)图 7.7 添加员工窗口点击员工信息查看,如图7.8 所示:( a)(
24、b)图 7.8 员工信息查看继续添加,若添加员工编号和已有的员工重复,则弹出提示框,如图7.9 所示:图 7.9 员工信息插入不成功修改之后就可以添加成功,如图 7.10 所示:图 7.10 员工信息插入成功查看员工信息,如图 7.11 所示:( a)( b)图 7.11 员工信息查看员工信息修改功能,如图 7.12 所示:图 7.12 员工修改检查员工信息是否修改成功,如图 7.13 所示:( a)(b)( c)( d)图 7.13 员工信息说明已修改成功;员工信息删除功能,如图 7.14 所示,弹出窗口,员工变动情况选择无,转出,将转出进行删除:( a)( b)( c)( d)图 7.14
25、 员工删除过程员工信息按条件查询,点击:详细,教育学历,工作时间,以及工作变动,如图7.15 所示:( a)( b)( c)( d)( e)( f )( g)图 7.16 员工信息查询部门管理:添加部门信息,包括部门编号、部门名称、部门经理、部门简介等信息;具有更新部门的功能,演示情况如下: ( 部门中首先有一个经理,员工人数初值为 1,部门信息更新后,员工人数可做相应修改 )点击信息查看和统计,如图7.17 所示:图 7.17 部门信息点击部门信息更新,进入更新界面,选择部门,进行更新,完成后,点击“请点击查看所有部门”按钮,即可看到更新后的数据,如图7.18 所示:( a)( b)(c)图
26、 7.18员工信息更新系统用户管理: 查看系统用户信息, 包括用户名和用户类型 (系统管理员和普通用户)等信息 ;点击用户档案查询,如图7.19 所示:( a)( b)图 7.19 用户档案查询以上即所有功能的实现演示。点击退出按钮,离开人事管理系统,如图7.20 所示:图 7.20 用户离开主界面7.2 应用程序编制建立人事管理系统数据库,具体的SQL语句如下:7.2.1 数据库创建create database PMS7.2.2基本表创建建立员工表use PMScreate table employee(_name varchar(10) not null,_no varchar(5) p
27、rimary key not null,_sex varchar(2),_callnumber varchar(11),dpt_no varchar(4),_education varchar(10),_position varchar(10),_worktime datetime,infor_change varchar(4),foreign key (dpt_no) references department(dpt_no)建立部门表use PMScreate table department(dpt_name varchar(20),dpt_manager varchar(5),dpt_
28、no varchar(4) primary key,dpt_count int,dpt_abstract varchar(200)建立用户表create table Users(Users_name varchar(10)primary key not null,Users_pwd varchar(16),_authority int)7.2.3视图编制1) 员工信息视图create view V_v1(_no,_name,_education)asselect _no,_name,_educationfrom employe2)员工部门信息视图create view v_v2(_no,_na
29、me,dpt_no)asselect _no,_name,dpt_nofrom employee3)员工工作时间视图create view V_v3(_no,_name,_worktime)asselect _no,_name,_worktimefrom employee4)员工工作信息视图create view V_v4(_no,_name,infor_change)asselect _no,_name,infor_changefrom employee7.2.4存储过程成编制1)员工信息查看procedure pro_lookcreate procedure pro_lookno char
30、(5)asselect * from employeewhere _no=no2) 部门总体信息create procedure pro_dpt_total_infono char(4)asselect department.dpt_no,employee._no,employee._name,department.dpt_countfrom employee,departmentwhere employee.dpt_no=department.dpt_no and department.dpt_no=noGo3)寻找对应学历条件的员工人数create procedure pro_count1
31、count int output,education varchar(10)asselect count= COUNT(*) from V_v1where _education=education4)寻找对应部门编号条件的员工人数create procedure pro_count2count int output,dptno varchar(4)asselect count= COUNT(*) from V_v2where dpt_no=dptno5)寻找对应工作时间条件的员工人数create procedure pro_count3count int output,worktm datet
32、ime,worktimm datetimeasselect count= COUNT(*) from V_v3where _worktime between worktm and worktimm6)寻找对应工作变动条件的员工人数create procedure pro_count4count int output,info_change varchar(4)asselect count= COUNT(*) from V_v4where infor_change=info_change7)寻找员工总人数create procedure pro_count5count int outputass
33、elect count= COUNT(*) from employee8)员工信息注册检查人数create procedure pro_Concount int output,no varchar(5)asselect count=count(*) from employeewhere _no=no;9)部门总信息Create view V_vv(dpt_name,dpt_no,dpt_abstract,dpt_manager,_name,_no, _sex,_callnumber,_education,_position,_worktime,infor_change)asselect dep
34、artment.dpt_name,department.dpt_no,dpt_abstract,department.dpt_manager, employee._name,employee._no,employee._sex,employee._callnumber,employee._education,empl oyee._position,employee._worktime,r_change from department,employeewhere department.dpt_no=employee.dpt_no10)用户注册时查询有没有相同的用户create procedure pro_CConcount int output,Usersname var
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 矿井环保聚氨酯保温施工协议
- 租赁合同范本:建筑设施
- 医疗资产捐赠分配指南
- 农民工防暑降温措施
- 航空航天项目招投标方案范本
- 粮食加工厂火灾风险控制
- 广告公司车位租赁协议范本
- 皮革厂防火门招标资料
- 影视基地转让合同范例
- 空气净化器生产经理招聘书
- 人教PEP版六年级英语上册《Unit 3 A let's talk》说课稿教案设计优秀公开课
- 动稳定和热稳定的计算
- 上海市高等学校依法治校创建指标体系
- 管道滑脱应急预案PPT课件.ppt
- 组织架构图PPT课件
- 技工英语教案(共46页)
- DDL法在英语写作中的应用研究
- 向导5使用说明书
- 北信源-终端准入控制系统
- 【《项链》莫泊桑】《项链》课本剧剧本
- CM-4 融创集团结算管理制度
评论
0/150
提交评论