职工考勤管理系统数据库设计.doc

上传人:牧羊曲112 文档编号:1628964 上传时间:2022-12-12 格式:DOC 页数:26 大小:336KB
返回 下载 相关 举报
职工考勤管理系统数据库设计.doc_第1页
第1页 / 共26页
职工考勤管理系统数据库设计.doc_第2页
第2页 / 共26页
职工考勤管理系统数据库设计.doc_第3页
第3页 / 共26页
职工考勤管理系统数据库设计.doc_第4页
第4页 / 共26页
职工考勤管理系统数据库设计.doc_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《职工考勤管理系统数据库设计.doc》由会员分享,可在线阅读,更多相关《职工考勤管理系统数据库设计.doc(26页珍藏版)》请在三一办公上搜索。

1、数据库原理及应用项目实训任务书 一、题目: 职工考勤管理信息系统二、目的与要求1. 目的:1)锻炼学生的分析解决实际问题的能力 ;2)培养学生的数据库基础系统的分析、设计和开发能力2. 基本要求 1)数据库原理及应用课程设计采用以“项目小组”为单位进行,项目小组根据选定的项目,按计划进度完成项目的分析与设计及实现任务。2) 每个班级分成两个大组,每组选出组长一名,负责考勤、作业的收集上交。3) 题目自定或采用附录中的参考题目,每人选择一个题目4) 数据库工具:Access 或者 SQLServer5) 程序开发工具可以根据所学自行选择,或者采用ACCESS实现开发3. 创新要求 在基本要求达到

2、后,可进行创新设计,如系统用户功能控制,对管理员级和一般级别的用户系统功能操作不同 三、信息描述系统基本信息描述,如:职工、考勤等。四、功能描述系统功能基本要求职工信息,包括职工编号、职工姓名、性别、年龄、职称等;出勤记录信息,包括上班打卡时间,下班打卡时间,缺勤记录等;出差信息,包括出差起始时间、结束时间、统计总共天数等;请假信息,包括请假开始时间,结束时间,统计请假天数等;加班信息,包括加班开始时间、结束时间、统计加班总时间。五、解决方案1.分析程序的功能要求,划分程序功能模块。2.画出系统流程图。3.重点是设计数据库(严格按照数据库设计步骤),完成系统功能。4.完成项目实训报告书。六、进

3、度安排课程设计时间为两周(15周),安排如下 阶段任务进度(天)数据库设计需求分析系统功能模块图,以及每个子系统的数据流图、数据字典。系统需求说明书1概念结构设计局部E-R图,合并总E-R图1逻辑结构设计转换为关系模式,优化,外模式1物理结构设计及数据库实现完成数据库实施,创建表、关系及完整性 数据库设计说明书1系统实现系统实现及测试按照要求完成实现系统各项功能系统详细设计说明书1系统验收书写项目实训报告,验收答辩 七、撰写项目实训报告及总结项目实训报告要求:包括需求分析、概念结构设计、逻辑结构设计、编码(详细写出编程步骤)、测试的步骤和内容、项目总结、参考资料等,不符合以上要求者,则本次设计

4、以不及格记。八、参考资料数据库原理及应用ACCESS数据库与程序设计ACCESS项目案例导航数据库教研室2014.05.20登录考勤系统用户资料管理每日考勤管理请假考勤管理出差考勤管理加班考勤管理修改删除管理图1 系统结构图1.2.1 模块管理(1)用户管理模块增加一名系统使用用户,同时设置密码和权限,当此用户要更改密码时,可以在修改密码模块中进行。必须具有一定权限才能进行此项操作。而当某些职工离职或者因某中缘故,不能再使用考勤系统,可以将该用户删除。可以更改拥护权限,使其具有访问某些模块的权限或者剥夺其访问某些模块的权限。所有系统使用用户都可能在此修改密码,以保障系统安全。(2)基本资料管理

5、模块设置的时间有上午上、下班时间,下午上、下班时间,这个模块与上下班时间表相对应,以方便考勤操作。增加和删除请假类型,修改请假类型内容,并将操作结果存在请假类型表内。增加和删除外出类型,修改外出类型内容,并将操作结果存在外出类型表内。增加、删除和修改员工基本资料。:员工正常上班加班情况请假出差带职人员命令部门部门申请批准 图2 考勤系统业务流程图设计的数据流程图如下所示:上班表员工正常上班加班请假出差加班表请假表出差表部门其它人员统计查询图3 考勤系统的数据流程图设计的E-R图如下所示员工正常上班加班请假出差考勤表加班表请假表出差表姓名密码进入公司时间上班时间下班时间加班时间类型性别请假时间请

6、假类型出差时间出差类型上班时间管理员记录日期密码姓名上班日期图4 考勤系统的E-R流程图该考勤管理系统中主要包括了员工的基本信息(姓名、性别、所属部门等),查询员工的基本信息,可根据员工的实际工资情况或实际的出勤情况查看员工的基本信息等;另外还有权限管理和日志的功能。将生成的代码,复制。通过SQL 2000,在数据库中新建的表如下所示:图5 数据库中建立的表1.2.3数据表的设计(1)用户表的创建 用户表的创建脚本如下:create table 用户 ( 用户名 char(30) not null, 员工号 char(30) null, 权限名 char(30) null, 用户密码 int

7、not null, 权限号 int not null, constraint PK_用户 primary key (用户名)go用户表的字段格式说明如下所示:图6用户表的属性图7用户表(2)权限表的创建 权限表是用来确定某一权限类型所能访问的系统模块。权限表的创建脚本如下所示:create table 权限表 ( 权限名 char(30) not null, 用户管理 char(2) not null, 基本资料更改 char(2) not null, 请假管理 char(2) not null, 外出管理 char(2) not null, 加班管理 char(2) not null, 修改

8、考勤资料 char(2) not null, 数据库操作 char(2) not null, 日志删除 char(2) not null, constraint PK_权限表 primary key (权限名)go权限表的字段格式说明如下所示:图8权限表的属性图9权限表(3)出勤资料表的创建 出勤资料表用来记录员工每天实际上下班时间。这张表保存的数据是考勤的依据。出勤资料表的创建脚本如下所示:create table 出勤资料表 ( 记录号 int not null, 员工基_员工号 char(30) null, 员工号 char(40) not null, 上午上班时间 datetime n

9、ot null, 上午下班时间 datetime not null, 下午上班时间 datetime not null, 下午下班时间 datetime not null, 记录日期 datetime not null, constraint PK_出勤资料表 primary key (记录号))go出勤资料表的字段格式说明如下所示:图10出勤资料表的属性图11出勤资料表(4)员工基本资料表为了判断某员工是否已经考勤,在员工表中的另一个字段,字段名为“考勤”,每天考勤前,将此字段值都设为0,每考勤一个员工,则将其字段值该为1,以后操作时根据其字段判断其是否已经考勤。其创建脚本为:create

10、table 员工基本资料表 ( 员工号 char(30) not null, 员工名 char(30) not null, 性别 tinyint not null, 年龄 int not null, 入公司时间 datetime not null, 住址 char(50) not null, 联系电话 char(20) null, 手机 char(20) null, 电子邮箱 char(30) null, 考勤 tinyint not null, constraint PK_员工基本资料表 primary key (员工号)go员工基本资料表的年格式如下所示:图12员工基本资料表的属性图13员

11、工基本资料表(5)加班表的创建 加班表用来保存员工的加班信息。create table 加班表 ( 记录号 int not null, 员工基_员工号 char(30) null, 员工号 char(20) not null, 员工名 char(30) not null, 加班类型 char(30) not null, 起始时间 datetime not null, 结束时间 datetime not null, constraint PK_加班表 primary key (记录号)go加班表的字段格式说明如下所示:图14加班表的属性图15加班表(6)请假表的创建请假表是用来保存员工的请假记录

12、。其创建脚本为:create table 请假表 ( 记录号 int not null, 类型名 char(30) null, 员工基_员工号 char(30) null, 员工号 char(20) not null, 员工名 char(20) not null, 请假类型 char(30) not null, 起始时间 datetime not null, 结束时间 datetime not null, constraint PK_请假表 primary key (记录号)go请假表的字段格式如下所示:图16请假表的属性图17请假表(7)外出表的创建外出表是用来保存员工的外出记录,数据格式。

13、外出表的创建脚本如下:create table 外出表 ( 记录号 int not null, 类型名 char(30) null, 员工基_员工号 char(30) null, 员工号 char(20) not null, 员工名 char(30) not null, 外出类型 char(30) not null, 起始时间 datetime not null, 结束时间 datetime not null, constraint PK_外出表 primary key (记录号)Go外出表的字段格式如下所示:图18外出表的属性图19外出表(8)日志表的创建。 每一个实用的数据库应用系统,总是

14、少不了日志管理。日志是用来记录系统的使用情况,以便当系统遭到非法使用时,能够从日志表中找到使用记录,以便进行处理。日志表的创建脚本为:create table 日志表 ( 记录号 binary(8) not null, 用户名 char(30) not null, 操作 char(127) not null, 日期 datetime not null, constraint PK_日志表 primary key (记录号)go日志表的字段格式说明如下所示:图20日志表的属性图21日志表(9)统计表的创建。 每一个用户有时会需要去查询一下哪天是否迟到的情况,统计表就很方便的提供了这一功能。cre

15、ate table 统计表 ( 日期 datetime not null, 记录号 binary(8) not null, 用户名 char(30) not null, 迟到次数 char(127) not null, )Go图22统计表1.2.4代码的调试(1在表格内加入数据在SQL查询分析器中输入以下代码:insert into 外出表(记录号,类型名,员工基_员工号,员工号,员工名,外出类型,起始时间,结束时间)values(119,出差,a80,a80,邓月,出差,2008-06-09,2008-06-12)点击运行后输入:select * from 外出表 得出以下结果:图23加入数

16、据的表(2)查询数据: 在SQL查询分析器中输入以下代码: select * from 加班表点击运行后输入,得出以下结果:图24查询数据的表(3)修改数据: 在SQL查询分析器中输入以下代码:update 外出表 set 员工名 = 周丹 where 记录号=119 select * from 外出表点击运行后输入,得出以下结果:图25修改数据的表(4)删除数据: 在SQL查询分析器中输入以下代码: Delete from 外出表 where 员工名=周丹select * from 外出表点击运行后输入,得出以下结果:图26删除数据的表附录alter table 出勤资料表 drop con

17、straint FK_出勤资料表_REFERENCE_员工基本资料表goalter table 加班表 drop constraint FK_加班表_REFERENCE_员工基本资料表goalter table 外出表 drop constraint FK_外出表_REFERENCE_员工基本资料表goalter table 外出表 drop constraint FK_外出表_REFERENCE_外出类型表goalter table 日志表 drop constraint FK_日志表_REFERENCE_用户goalter table 用户 drop constraint FK_用户_RE

18、FERENCE_员工基本资料表goalter table 用户 drop constraint FK_用户_REFERENCE_权限表goalter table 请假表 drop constraint FK_请假表_REFERENCE_员工基本资料表goalter table 请假表 drop constraint FK_请假表_REFERENCE_请假类型表go/*=*/* Table: 出勤资料表 */*=*/create table 出勤资料表 ( 记录号 int not null, 员工基_员工号 char(30) null, 员工号 char(40) not null, 上午上班时间

19、 datetime not null, 上午下班时间 datetime not null, 下午上班时间 datetime not null, 下午下班时间 datetime not null, 记录日期 datetime not null, constraint PK_出勤资料表 primary key (记录号)go/*=*/* Table: 加班表 */*=*/create table 加班表 ( 记录号 int not null, 员工基_员工号 char(30) null, 员工号 char(20) not null, 员工名 char(30) not null, 加班类型 char

20、(30) not null, 起始时间 datetime not null, 结束时间 datetime not null, constraint PK_加班表 primary key (记录号)go/*=*/* Table: 员工基本资料表 */*=*/create table 员工基本资料表 ( 员工号 char(30) not null, 员工名 char(30) not null, 性别 tinyint not null, 年龄 int not null, 入公司时间 datetime not null, 住址 char(50) not null, 联系电话 char(20) null

21、, 手机 char(20) null, 电子邮箱 char(30) null, 考勤 tinyint not null, constraint PK_员工基本资料表 primary key (员工号)go/*=*)/* Table: 外出表 */*=*/create table 外出表 ( 记录号 int not null, 类型名 char(30) null, 员工基_员工号 char(30) null, 员工号 char(20) not null, 员工名 char(30) not null, 外出类型 char(30) not null, 起始时间 datetime not null,

22、结束时间 datetime not null, constraint PK_外出表 primary key (记录号)go/*=*/* Table: 日志表 */*=*/create table 日志表 ( 记录号 binary(8) not null, 用户名 char(30) not null, 操作 char(127) not null, 日期 datetime not null, constraint PK_日志表 primary key (记录号)go/*=*/* Table: 权限表 */*=*/create table 权限表 ( 权限名 char(30) not null, 用

23、户管理 char(2) not null, 基本资料更改 char(2) not null, 请假管理 char(2) not null, 外出管理 char(2) not null, 加班管理 char(2) not null, 修改考勤资料 char(2) not null, 数据库操作 char(2) not null, 日志删除 char(2) not null, constraint PK_权限表 primary key (权限名)go/*=*/* Table: 用户 */*=*/create table 用户 ( 用户名 char(30) not null, 员工号 char(30

24、) null, 权限名 char(30) null, 用户密码 int not null, 权限号 int not null, constraint PK_用户 primary key (用户名)go/* Table: 请假表 */*=*/create table 请假表 ( 记录号 int not null, 类型名 char(30) null, 员工基_员工号 char(30) null, 员工号 char(20) not null, 员工名 char(20) not null, 请假类型 char(30) not null, 起始时间 datetime not null, 结束时间 da

25、tetime not null, constraint PK_请假表 primary key (记录号)goalter table 出勤资料表 add constraint FK_出勤资料表_REFERENCE_员工基本资料表 foreign key (员工基_员工号) references 员工基本资料表 (员工号)goalter table 加班表 add constraint FK_加班表_REFERENCE_员工基本资料表 foreign key (员工基_员工号) references 员工基本资料表 (员工号)goalter table 外出表 add constraint FK_

26、外出表_REFERENCE_员工基本资料表 foreign key (员工基_员工号) references 员工基本资料表 (员工号)goalter table 外出表 add constraint FK_外出表_REFERENCE_外出类型表 foreign key (类型名) references 外出类型表 (类型名)goalter table 日志表 add constraint FK_日志表_REFERENCE_用户 foreign key (用户名) references 用户 (用户名)goalter table 用户 add constraint FK_用户_REFERENC

27、E_员工基本资料表 foreign key (员工号) references 员工基本资料表 (员工号)goalter table 用户 add constraint FK_用户_REFERENCE_权限表 foreign key (权限名) references 权限表 (权限名)goalter table 请假表 add constraint FK_请假表_REFERENCE_员工基本资料表 foreign key (员工基_员工号) references 员工基本资料表 (员工号)goalter table 请假表 add constraint FK_请假表_REFERENCE_请假类型

28、表 foreign key (类型名) references 请假类型表 (类型名)gonsert 加班表(记录号,员工基_员工号,员工号,员工名,加班类型,起始时间,结束时间)values(5019,a9,aa9,六仪,夜班,2002-02-08,2001-02-12)insert 加班表(记录号,员工基_员工号,员工号,员工名,加班类型,起始时间,结束时间)values(5016,a8,aa8,张萍,日班,2001-05-06,2001-05-12)insert 加班表(记录号,员工基_员工号,员工号,员工名,加班类型,起始时间,结束时间)values(5023,a20,aa20,王明,夜班,2002-08-06,2001-08-12)select * from 加班表insert into 外出表(记录号,类型名,员工基_员工号,员工号,员工名,外出类型,起始时间,结束时间)values(119,出差,a80,a80,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号