数据库课设计考勤管理系统

上传人:bin****86 文档编号:55171877 上传时间:2018-09-25 格式:DOC 页数:17 大小:477.50KB
返回 下载 相关 举报
数据库课设计考勤管理系统_第1页
第1页 / 共17页
数据库课设计考勤管理系统_第2页
第2页 / 共17页
数据库课设计考勤管理系统_第3页
第3页 / 共17页
数据库课设计考勤管理系统_第4页
第4页 / 共17页
数据库课设计考勤管理系统_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《数据库课设计考勤管理系统》由会员分享,可在线阅读,更多相关《数据库课设计考勤管理系统(17页珍藏版)》请在金锄头文库上搜索。

1、课课 程程 设设 计计课程名称 数据库系统概论_题目名称 考勤管理系统 学生学院 计算机学院 专业班级 学 号 学生姓名 _指导教师 左亚尧 2012 年 1 月 16 日2一、需求分析3数据需求3功能需求3二、概念结构设计31、局部 E-R 图 .32、整体 E-R 图 .5三、逻辑结构设计61、关系模式62、系统功能模块图63、数据完整性设计6四、数据库物理设计71、索引72、数据表设计7五、数据库实施81、建数据库82、建表(职工信息表、出勤记录表、出差记录表、加班记录表、请假记录表、月统计表) 93、触发器11六、系统的主要功能实现代码121、关系图的建立122、简单操作132、复杂查

2、询15七、收获和体会173一、需求分析一、需求分析数据需求数据需求:数据库中的数据要符合现实逻辑。功能需求功能需求:1、职工信息的管理:包括职工基本信息的查询、增加、修改和删除,记录职工的姓名、性别、年龄和职称。2、职工考勤的管理:包括对职工考勤情况的增加、查询、修改和删除,记录职工一个月的考勤天数,每天进行修改。3、职工出差记录的管理:包括对职工出差情况的查询、增加、修改和删除。管理者安排员工出差,对出差时间,次数的管理。4、职工加班记录的管理:对职工的加班时间进行统计,记录开始时间和结束时间,对加班信息实现添加,删除等操作。5、职工请假记录的管理:包括对职工请假情况的查询、增加、修改和删除

3、。完善请假信息,如请假开始时间,请假结束时间,请假的次数进行管理。6、职工月统计记录的管理:包括对职工月记录的查询、增加、修改和删除。 二、概念结构设计二、概念结构设计1、局部、局部 E-R 图图(1)职工 E-R 图职工信息编号姓名 年龄性别职称(2)出勤 E-R 图4出勤记录编号出勤天数(3)出差 E-R 图出差信息职工编号出差编号开始时间结束时间出差天数(4)加班 E-R 图加班信息职工编号加班编号开始时间结束时间加班时间(5)请假 E-R 图请假信息职工编号请假编号开始时间结束时间请假天数(6)月统计 E-R 图5统计信息职工编号出勤天数加班时间出差天数请假天数2、整体、整体 E-R

4、图图出勤天数加班统计月统计出差统计出勤记录请假统计统计 出勤结束时间 出差天数出差编号出差记录起始时间加班编号加班时间加班出差加班信息结束时间起始时间请假编号年龄职工请假请假信息职称开始时间性别姓名编号出勤统计结束时间请假天数6三、逻辑结构设计三、逻辑结构设计1、关系模式、关系模式职工信息(职工编号,姓名,性别,年龄,职称)出勤记录(职工编号,出勤天数)出差记录(职工编号,出差编号,开始时间,结束时间,出差天数)加班信息(职工编号,加班编号,加班开始时间,加班结束时间,加班时间)请假信息(职工编号,请假编号,请假开始时间,请假结束时间,请假天数)月统计(职工编号,出勤月统计,出差月统计,加班月

5、统计,请假月统计)2、系统功能模块图、系统功能模块图 考勤管理系统职工基本信息出 勤 记 录出 差 记 录加 班 记 录请 假 记 录月 统 计查 询 职 工 信 息添 加 修 改 删 除添 加 修 改 删 除添 加 修 改 删 除添 加 修 改 删 除添 加 修 改 删 除添 加 修 改 删 除查 询 出 勤 天 数查 询 出 差 记 录查 询 请 假 记 录查 询 加 班 记 录查 询 月 统 计3、数据完整性设计、数据完整性设计1)主键约束、非空值约束职工信息表:职工编号为主键,所以此项非空7出勤记录表:职工编号为主键,所以此项非空出差记录表:职工编号和出差编号为主键,所以这 2 项非空

6、加班记录表:职工编号和加班编号为主键,所以这 2 项非空请假记录表:职工编号和请假编号为主键,所以这 2 项非空月统计表:职工编号为主键,所以此项非空2)实施 CHECK 约束员工表中建立一个检查约束,即员工性别不是男就是女CHECK(性别 IN(男,女)3)外键约束Wno 为外键FOREIGN KEY (Wno) REFERENCES worker(Wno)通过此键建立 6 个表的联系四、数据库物理设计四、数据库物理设计1、索引、索引为提高检索性能,为表创建符合索引,其索引项为职工编号和姓名create index Wno_Wnameon worker(Wno,Wname)2、数据表设计、数

7、据表设计职工信息表定义出勤记录表定义8出差记录表定义加班记录表定义请假记录表定义月统计表定义五、数据库实施五、数据库实施1 1、建数据库、建数据库CREATE DATABASE attendanceON PRIMARY9(NAME= attendance_data,FILENAME= E:attendanceattendance_data.mdf,SIZE = 5MB,MAXSIZE = 20MB,FILEGROWTH = 10%)LOG ON( NAME= attendance_log,FILENAME= E:attendanceattendance_log.ldf,SIZE = 2MB,F

8、ILEGROWTH = 1MB)2、建表、建表(职工信息表、出勤记录表、出差记录表、加班记录表、请假记录表、职工信息表、出勤记录表、出差记录表、加班记录表、请假记录表、 月统计表月统计表)use attendancegoCREATE TABLE worker( Wno CHAR(8) PRIMARY KEY, Wname CHAR(8) UNIQUE, Wsex CHAR(2) CHECK(Wsex IN(男,女),Wage SMALLINT,Wtital CHAR(10),)CREATE TABLE work_note( 10Wno CHAR(8) PRIMARY KEY, FOREIGN

9、KEY (Wno) REFERENCES worker(Wno),work_days tinyint,)CREATE TABLE out_note( Wno CHAR(8), out_no CHAR(8) , /*出差编号*/PRIMARY KEY(Wno, out_no),FOREIGN KEY (Wno) REFERENCES worker(Wno),out_time VARCHAR(50),back_time VARCHAR(50),out_days tinyint,/*出差天数*/)CREATE TABLE OT_note( Wno CHAR(8), OT_no CHAR(8) , P

10、RIMARY KEY(Wno,OT_no),FOREIGN KEY (Wno) REFERENCES worker(Wno),OT_time VARCHAR(50),OTend_time VARCHAR(50),OT_hours tinyint,)CREATE TABLE leave_note( Wno CHAR(8), 11leave_no CHAR(8) , PRIMARY KEY(Wno, leave_no),FOREIGN KEY (Wno) REFERENCES worker(Wno),leave_time VARCHAR(50),leaveend_time VARCHAR(50),

11、leave_days tinyint,)CREATE TABLE month_count( Wno CHAR(8) PRIMARY KEY, FOREIGN KEY (Wno) REFERENCES worker(Wno),workdays tinyint, OThours tinyint,outdays tinyint,leavedays tinyint,) 3、触发器、触发器创建一个触发器,当删除一个职工的基本信息时,同时也删除其他表中相应职工的信息。如,当删除 worker 表中职工基本信息时,同时也删除员工考勤记录表中的内容,请假记录,出差记录,加班记录分别建立此类触发器。12crea

12、te trigger del1on workerfor deleteasbegindelete from work_notewhere Wno=(select Wno from deleted)endcreate trigger del2on workerfor deleteasbegindelete from out_notewhere Wno=(select Wno from deleted)endcreate trigger del3on workerfor deleteasbegindelete from OT_notewhere Wno=(select Wno from delete

13、d)endcreate trigger del4on workerfor deleteasbegindelete from leave_notewhere Wno=(select Wno from deleted)endcreate trigger del5on workerfor deleteas begindelete from month_countwhere Wno=(select Wno from deleted)end13六、系统的主要功能实现代码六、系统的主要功能实现代码1、关系图的建立、关系图的建立2、简单操作、简单操作1)职工基本信息情况代码如下:select * from

14、worker2)职工出勤情况代码如下:14select worker.Wno,Wname,Wsex,Wage,Wtital,work_daysfrom worker,work_notewhere work_note.Wno=worker.Wno3)职工加班情况代码如下:select worker.Wno,Wname,OT_hoursfrom worker,OT_note where worker.Wno=OT_note.Wno AND OT_hours04)职工考勤月情况代码如下:15select worker.*,workdays,outdays,OThours,leavedaysfrom

15、worker,month_countwhere worker.Wno=month_count.Wno5)修改月考勤信息update month_countset workdays=workdays-4update work_noteset work_days=work_days-4162、复杂查询、复杂查询1)职工出差情况代码如下: select worker.Wno,Wname,Wsex,Wage,Wtital,out_daysfrom worker LEFT JOIN out_note on(worker.Wno=out_note.Wno)2)男性职工考勤月情况代码如下:select wo

16、rker.*,workdays,outdays,OThours,leavedaysfrom worker,month_countwhere worker.Wno=month_count.Wno AND Wsex=男173)职工加班情况查询代码如下:select worker.Wno,Wname,Wsex,Wage,Wtital,OT_note.*from worker LEFT JOIN OT_note on(worker.Wno=OT_note.Wno) 七、收获和体会七、收获和体会本次课程设计做得比较粗糙,主要是因为对课程和软件的不熟悉。任务所要求的人机界面还要用到除 SQL 外的其他语言编写,这样难度就比现在要高多了,根据现在的情况,这个要求是无法达到的了,所以该系统并没有实现人机界面。我认为本次课程设计的主要目的是给我们了解一下数据库的创建和运行、维护等操作

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 工作范文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号