数据库--职工考勤管理信息系统
员工考勤数据库设计报告

企业员工考勤管理子系统一.需求分析1.系统背景分析现在不论哪个企业,都要进行考勤,一些企业在考勤管理方面用了大量的人力和财力,不说准确度和可信度如何,其效率很低,而且容易出错,不利于管理。
所以人工考勤已经很难再满足企业规范化管理的要求,随着数据库技术的发展和企业信息化建设的进行,使用计算机管理考勤成为一种主流趋势,它不仅为企业减少了人力财力的付出,而且也大大减轻了考勤工作人员的工作量。
本文系统的阐述了企业考勤管理设计开发的全过程。
包括系统需求调查分析,概念结构设计,逻辑结构设计等部分。
2.数据流程图:3.数据字典:(2)数据结构描述(4)数据存储二.概念结构设计经过调查、信息流程分析、数据收集,并结合需求分析,明确了该子系统的功能:A.给员工编号,登记其基本信息。
B.给各部门编号、命名,确定其职责范围,并任命部门经理。
C.对员工的考勤数据进行登记,并进行月度考勤统计。
D.对员工的月度考勤统计的结果来核算员工工资。
实体和属性的联系系统基本的E-R图对E-R图调整的准则:现实世界中的事物能作为属性对待的尽量作为属性对待;属性和实体的划分:属性中不具有需要描述的信息,即属性是不可分的数据项,不再包含其他信息。
实体属性定义:员工(员工编号、员工姓名、员工性别、出生日期、职务、部门编号);部门(部门编号、部门名称、部门经理职工号);出勤记录 (出勤编号、日期、上班时间、下班时间);请假记录(请假编号、请假起始时间、请假结束时间、请假原因、扣除奖金);加班记录(加班编号、加班时间长度、日期、加班费);出差记录(出差编号、出差起始时间、出差结束时间、出差描述、补助资金);月度考勤统计(月度考勤编号、员工编号、日期、累计正常工作时间、累计请假、累计出差、累计加班、迟到次数、早退次数、旷工次数);工资(工资编号、基本工资、奖金、实际工资);具体调整如下:1.出勤记录,请假记录,加班记录,出差记录本应作为员工的一个属性,但是其中还涉及到相关的奖金待遇及具体描述,则单独作为一个实体;2.工资单独作为一个实体,因为此处强调的是员工的出勤工资,则分开来写。
出勤(考勤)管理系统(SQL数据库)_1401191946010126

出勤(考勤)管理系统(SQL数据库)摘要:由于社会在不断发展,互联网已经被千千万万的行业所接收,出勤管理系统在日常教学工作中占有很重要的位置。
通过对出勤管理系统的现状分析,考虑如何在日常生活中充分利用网络和计算机的优势,使得出勤管理系统既能够在学校教学管理工作中得到充公使用,又能节省时间、提高效率,并且使这一资源得到重复利用,由此设计出勤管理系统。
本系统应用B/S结构,MVC模式采用SSH框架技术编写。
很好的利用网络,即使相隔千里,也可以随时为学校管理提供帮助。
成为学生与老师、老师与领导中稳固的桥梁。
也是网络运用中极为有益的一个方面。
出勤管理系统很好的利用了高速发展的互联网络资源。
为广大师生提供便捷、高效、灵活的信息查询平台。
该系统主要功能包括教室安排、课程安排、学生考勤、在线请假、教室维护、班级维护、密码修改、用户管理等功能。
网络的运用极为广泛,我们应该多多开发像出勤管理系这样方便教学管理的软件,促进网络时代的发展。
关键字:出勤管理;S2SH ;JSP目录摘要IIIAbstract IV目录V第1章前言71.1 国内外现状71.2 需求分析71.3 系统可行性分析81.3.1 技术可行性81.3.2 管理可行性9第2章关键技术介绍102.1 关键性开发技术的介绍102.1.1 Struts2简介102.1.2 MVC模式介绍122.1.3 Model: 系统状态和商业逻辑JavaBeans 132.1.4 View: JSP页面和表示组件132.1.5 Controller: ActionServlet和ActionMapping 14第3章面向对象设计153.1面向对象设计概述153.2系统设计思想和原则163.3系统模块划分16第4章数据库设计184.1 数据库的设计原则184.2 数据字典194.2.1 用户信息表194.2.2 考勤信息表194.2.3 日期信息表194.2.4 教室信息表204.2.5 请假信息表204.2.6 课程信息表204.2.7 班级信息表214.2.8 教室安排信息表21第5章系统实现225.1各功能模块实现225.1.1用户登录模块的实现225.1.2教室安排模块的实现245.1.3课程安排模块的实现265.1.4学生考勤模块的实现285.1.5在线请假模块的实现305.1.6教室维护模块的实现335.1.7班级模块的实现355.1.8密码修改模块的实现375.1.9用户管理模块的实现38第6章系统测试416.1 软件测试的目的和意义416.2 软件测试的步骤416.3 测试方案426.4 测试用例426.5 系统运行436.5.1运行说明43总结44参考文献45致谢47附录48出勤管理系统主要解决学生的请假问题以及能让学生、任课老师、班主任、学院领导及时方便地查询学生的出勤情况。
uml综合案例:员工考勤系统

《UML2面向对象分析与设计》综合案例:员工考勤系统作业评分实施细则一、第四章作业(用例图和用例文档)1. 评分档次用例图和用例文档分别按照满分10分计算,以此作为评分标准,基本的评分准则如下:●一档(10分):图形(文本)条理清楚,无任何明显错误●二档(8-9分):图形/文本清楚,存在个别错误●三档(6-7分):图形/文本一般,存在一定的错误●四档(5分):图形/文本条理不清,存在致命错误或错误数过多一般情况下按错别个数扣分,每个错误按严重程度扣0.5、1、2分,最终成绩向上取整;同类错误不重复扣分。
2. 参考答案作业答案部分仅供参考,学生的作业可能会多种多样,具体按照第三部分的典型错误扣分,用例图:用例文档:员工(含小时工和普通员工)相关用例无前置条件员工已正确登录到该系统后置条件无(将在下次迭代中确定)涉众利益员工:准确地维护自己的考勤信息公司:要求员工的信息准确基本路径1—添加新的考勤1.1、用例起始于用户需要记录新的考勤信息1.2、系统显示当前日期和时间,并提醒用户该时间即为用户的上班时间1.3、用户确认该信息1.4、系统记录当前日期和时间,并将其作为用户考勤信息的上班时间2—提交考勤信息2.1、任何时刻用户都可以提交自己的考勤信息2.2、系统查询用户上班时的考勤记录(E-1)2.3、系统记录当前的日期和时间,作为用户考勤信息的下班时间2.4、系统显示用户今天完整的考勤信息2.5、用户确认提交考勤信息2.6、系统保存考勤信息,并将考勤信息的状态改为“已提交”(D-1)备选路径E-1 如果系统没有找到用户上班时的考勤信息,则用例终止;用户可以通过项目经理为其添加上班的考勤信息数据需求A-1 考勤信息主要包括:用户名、日期、上班时间、下班时间、状态D-1 考勤信息的状态有:“新考勤”(只有上班时间,没有下班时间的考勤信息)、“已提交”(有完整的上下班时间,但还没有进行工资结算的考勤)、“已完成”(已结算工资的考勤)业务规则B-1 作为用户考勤信息的上下班时间由系统自动获取,不允许用户编辑B-2 状态为“已提交”的考勤信息不允许普通用户进行任何操作;非功能需求无设计约束无待解决问题无参与者时间、项目管理数据库(外部系统)相关用例无前置条件无后置条件无(将在下次迭代中确定)涉众利益员工:…(包括临时工、普通员工、销售人员)公司:…基本路径—计算普通员工和销售人员工资1.用例起始于系统时间到达每月末晚上,需要计算普通员工和销售人员工资(E-1);2.系统查询所有的普通员工和销售人员的个人信息(D-1);3.对于每一个员工(普通员工、销售人员):3.1.根据员工的类别获得其考勤信息或订单信息(E-2);3.1.1.如果是普通员工,则获得本月的考勤信息(D-2);3.1.2.如果是销售人员,则获得本月的销售信息(D-3);3.2.系统从项目管理数据库中获得员工的工资级别信息(E-3);3.3.系统根据员工的考勤信息(或销售信息)和工资级别信息计算该员工的工资,保存;4.计算完成后,系统产生一个提醒信息,以便于项目经理确认备选路径E-1—计算临时工工资1. 用例起始于系统时间达到每个周末的晚上,需要计算临时工工资2. 系统查询所有临时工的个人信息3. 对于每一个临时工:3.1. 获得员工的考勤信息3.2 从项目管理数据库中获得员工的工资级别信息;3.3 系统根据员工的考勤信息和工资级别信息计算该员工的工资,保存;4. 计算完成后,系统产生一个提醒信息,以便于项目经理确认E-2 如果找不到该员工的考勤信息或订单信息,则记录相关日志,并转回3计算下一个员工E-3 如果无法获得员工工资级别信息,则记录相关日志,并转回3计算下一个员工数据需求D-1. 员工信息=员工编号+员工姓名D-2 考勤信息参见“登记考勤”用例D-3 订单信息参见“登记订单”用例业务规则暂不明确非功能需求暂不明确设计约束3. 典型错误情况3.1 用例图部分3.1.1 参与者本系统中包含的参与者有:小时工、普通员工、销售人员、项目经理、项目管理数据库、时间,其中由于小时工和普通员工有关考勤的处理细节完全相同,因此为了便于简化和复用,可将他们统一合并为员工(不合并也可以,不算错误),但不能和销售人员合并,因为销售人员没有考勤信息,而是登记订单信息,需要明确区分。
人员考勤管理系统系统架构设计

人员考勤管理系统系统架构设计一、引言人员考勤管理是组织管理中的重要环节,它能够有效地监控和管理员工的出勤情况,提高工作效率和生产力。
为了更好地支持人员考勤管理,本文将提出一个人员考勤管理系统的系统架构设计方案。
二、系统架构概述人员考勤管理系统的目标是实现对员工出勤情况的监控和管理,以便及时掌握员工考勤数据并进行数据分析和报告生成。
基于这一目标,系统的整体架构可以分为以下几个主要组件:1. 用户界面:提供员工和管理人员的交互界。
2. 考勤设备接口:用于与考勤设备进行数据的交换和同步。
3. 数据库:负责存储员工考勤数据和相关信息。
4. 考勤数据处理模块:负责对考勤数据进行处理、分析和生成报告。
5. 权限控制模块:用于管理各级用户的权限和访问控制。
三、系统组件详细设计1. 用户界面用户界面是系统与用户之间的重要接口,应该具备良好的交互性和易用性。
用户界面应该包括以下功能:- 员工登录和个人信息管理;- 查看个人考勤记录和考勤统计信息;- 申请请假或调班;- 管理人员审核请假或调班申请;- 生成考勤报告。
2. 考勤设备接口考勤设备接口是系统与考勤设备之间的关键组件,它负责与考勤设备进行数据的交换和同步。
接口应该支持以下功能:- 读取考勤设备上的出勤数据;- 将出勤数据同步到数据库;- 将员工信息更新到考勤设备。
3. 数据库数据库是存储员工考勤数据和相关信息的重要组件,它应该支持以下功能:- 存储员工信息,包括姓名、部门、职位等;- 存储考勤记录,包括考勤时间、出勤状态等;- 存储请假和调班申请信息。
4. 考勤数据处理模块考勤数据处理模块是对考勤数据进行处理、分析和生成报告的核心组件,它应该包括以下功能:- 对考勤数据进行逻辑校验和异常处理;- 统计员工的出勤情况和工时;- 生成考勤报告和统计分析。
5. 权限控制模块权限控制模块用于管理各级用户的权限和访问控制,包括以下功能:- 配置用户角色和权限;- 控制用户对敏感数据和功能的访问权限;- 记录用户操作日志。
考勤管理系统使用说明

考勤管理系统使用说明考勤管理系统使用说明1、系统介绍1.1 系统概述考勤管理系统是一款用于管理和统计员工考勤数据的软件系统。
它提供了便捷的考勤记录录入、统计分析、报表等功能,帮助企业高效管理员工的出勤情况。
1.2 功能特点1.2.1 考勤记录录入:用户可以通过系统录入员工的考勤记录,包括上班时间、下班时间、迟到早退、请假等情况。
1.2.2 考勤统计分析:系统能够根据员工的考勤记录,自动考勤统计信息和报表,包括缺勤次数、迟到早退次数、加班时长等。
1.2.3 班次管理:系统支持灵活的班次设置和管理,可以根据不同的班次规则进行考勤统计。
2、系统安装与配置2.1 硬件要求2.1.1 服务器:推荐配置为4核CPU、8GB内存、500GB存储空间。
2.1.2 客户端:推荐配置为双核CPU、4GB内存、256GB存储空间。
2.2 软件要求2.2.1 操作系统:服务器端支持Windows Server 2012及以上版本,客户端支持Windows 10及以上版本。
2.2.2 数据库:系统使用MySQL数据库,需要提前安装并配置好数据库环境。
2.3 安装步骤2.3.1 安装包:从官方网站最新版本的考勤管理系统安装包。
2.3.2 解压安装包:将安装包解压到指定目录。
2.3.3 运行安装程序:双击运行安装程序,按照提示完成系统的安装。
2.4 系统配置2.4.1 数据库配置:在安装完成后,打开系统的配置文件,配置数据库连接信息。
2.4.2 员工信息导入:将员工的基本信息导入系统,包括姓名、工号、部门等。
3、系统使用3.1 登录系统3.1.1 启动系统:双击系统图标,打开登录界面。
3.1.2 输入账号密码:输入正确的账号和密码,登录按钮。
3.2 考勤记录录入3.2.1 新建考勤记录:“考勤录入”菜单,选择“新建考勤记录”,进入考勤记录录入界面。
3.2.2 输入考勤信息:根据员工实际出勤情况,填写上班时间、下班时间等信息。
考勤管理系统使用说明

考勤管理系统使用说明考勤管理系统使用说明1.引言本文档旨在详细介绍考勤管理系统的使用方法和功能说明,帮助用户快速上手并使用该系统进行考勤管理操作。
2.系统概述2.1 功能概述考勤管理系统是一个用于记录和管理员工上下班考勤情况的软件系统。
它提供了员工签到、签退、请假管理、统计报表等功能。
2.2 主要特点- 员工签到签退打卡功能,支持多种打卡方式(刷卡、指纹、人脸识别等)。
- 请假管理功能,员工可以申请请假并上报给上级审核。
- 自动统计考勤数据,考勤报表,提供数据分析和考勤情况查询功能。
- 管理人员可以设置考勤规则和班次排班。
3.系统安装与部署3.1 硬件要求- 服务器:推荐配置为4核CPU、8GB内存、100GB磁盘空间。
- 客户端:支持常见的操作系统,如Windows、MacOS、Linux 等。
3.2 软件要求- 操作系统:服务器端推荐使用Linux操作系统,客户端根据各自使用习惯选择操作系统。
- 数据库:系统需要使用MySQL数据库进行数据存储,版本要求为MySQL 5.7及以上。
3.3 系统部署步骤1.准备服务器环境,安装并配置操作系统和必要的软件;2.安装MySQL数据库,并进行相应的配置;3.考勤管理系统安装包,并解压到服务器指定目录;4.创建数据库,并导入系统提供的SQL脚本;5.配置系统相关参数,如数据库连接信息、考勤规则等;6.启动系统并进行测试。
4.用户使用指南4.1 用户登录1.打开考勤管理系统客户端;2.输入用户名和密码;3.登录按钮。
4.2 员工打卡1.进入系统后,打卡按钮;2.根据系统支持的打卡方式进行打卡,如刷卡、指纹、人脸识别等;3.打卡成功后,系统会显示打卡时间和签到/签退状态。
4.3 请假申请1.进入系统后,请假申请按钮;2.填写请假事由、起止日期等相关信息;3.提交申请,等待上级审核。
4.4 考勤统计1.进入系统后,考勤统计按钮;2.选择需要统计的时间范围;3.系统会自动计算考勤数据,并统计报表。
职工考勤管理系统

职工考勤管理系统前言20世纪90年代,随着我国市场经济的快速进展,职工考勤管理系统在企业的日常管理中发挥着越来越重要的作用。
职工考勤管理系统能够进行员工信息管理、出勤管理与密码管理等,方便处理企业内部员工的有关考勤信息。
此外Internet 的迅速普及,使Intranet成为Internet技术在企业管理信息系统中的应用与延伸,形成了集计算机,计算机网络、数据库、分布式计算等于一体的信息技术综合体,它打破了时间与地域的界限,使信息交流变得快捷、准确,为建立现代企业管理信息系统提供了充足的条件。
职工考勤系统是在习惯市场需求的客观前提下,为了满足中小型公司或者事业单位管理自己的员工而开发的。
目录第一章开发背景 (1)第二章需求分析 (2)第三章概念结构设计 (3)一、局部E-R图设计 (3)(一)、确定局部范围 (3)(二)、确定实体与属性 (3)(三)概念模型表示 (4)二、合并成总体E-R图 (5)第四章逻辑结构设计 (6)一、E-R图转换为关系模型 (6)关系模式的规范化 (6)第五章数据库实施与保护 (8)一、定义数据库结构 (8)二、组织数据入库 (10)三、数据库试运行 (10)第六章JAVA (11)一、JAVA代码: (12)(一)、登录代码 (12)(二)、管理员主界面代码 (15)二、JAVA运行 (29)(一)、用户登录界面 (29)(二)、主界面 (29)(三)、基本功能 (30)第七章参考文献 (34)第一章开发背景我们都明白,考勤管理系统是任何一个营业单位不可缺少的部分,它的内容关于单位的管理者与内部员工来说都至关重要,因此考勤管理系统应该能够为用户提供充足的信息与快捷的安全查询,及实时管理手段。
但在过去,人们一直在使用传统的人工的方式来进行考勤管理,这种落后的方式存在着许多缺点,如:效率低,保密性差,另外时间一长,将产生大量的文件与数据,这关于查找,更新与保护都带来了很多的困难。
中控考勤管理系统数据库结构

中控考勤管理系统数据库结构1. 员工表(Employee)- 员工ID(EmployeeID):主键,唯一标识每个员工- 员工姓名(EmployeeName)- 员工职位(Position)- 所属部门(Department)- 入职日期(StartDate)- 离职日期(EndDate)2. 考勤记录表(AttendanceRecord)- 记录ID(RecordID):主键,唯一标识每条考勤记录- 员工ID(EmployeeID):外键,关联到员工表的员工ID字段- 考勤日期(Date)- 上班时间(StartTime)- 下班时间(EndTime)- 工作时长(WorkHours)- 迟到次数(LateCount)- 早退次数(EarlyLeaveCount)- 缺勤次数(AbsentCount)3. 请假记录表(LeaveRecord)- 记录ID(RecordID):主键,唯一标识每条请假记录- 员工ID(EmployeeID):外键,关联到员工表的员工ID字段- 开始日期(StartDate)- 结束日期(EndDate)- 请假类型(LeaveType)- 备注(Remark)- 记录ID(RecordID):主键,唯一标识每条加班记录- 员工ID(EmployeeID):外键,关联到员工表的员工ID字段- 加班日期(Date)- 备注(Remark)5. 考勤统计表(AttendanceStatistics)- 统计ID(StatisticsID):主键- 员工ID(EmployeeID):外键,关联到员工表的员工ID字段- 年份(Year)- 月份(Month)- 出勤天数(AttendanceDays)- 迟到次数(LateCount)- 早退次数(EarlyLeaveCount)- 缺勤次数(AbsentCount)以上是中控考勤管理系统的一个基本数据库结构示例,可以根据具体需求进行调整和扩展。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录1 概述 (1)1.1设计背景 (1)1.2研究目的 (1)1.3理论基础的分析 (2)1.4预期结果和意义 (2)2 需求分析 (2)2.1功能需求 (2)2.2数据流图 (3)2.3功能模块图 (4)2.4系统数据流程图 (4)3 概念结构设计 (5)3.1局部E-R图 (5)3.2整体E-R图 (7)4 逻辑结构设计 (8)4.1关系模式 (8)4.2数据关系图 (9)5 物理结构设计 (9)5.1存储记录结构设计 (9)5.2创建索引 (12)6 数据库实施 (12)6.1建立数据库 (12)6.2数据表的创建 (13)6.3建立存储过程 (16)6.4创建触发器 (17)7 数据库运行和维护 (19)8 结论 (19)1 概述1.1设计背景随着企业人事管理的日趋复杂和企业人员的增多,企业的考勤管理变得越来越复杂。
规范的考勤管理是现代企业提高管理效益的重要保证,而传统的人工管理存在着效率低、不易统计、成本高和易出错等弊端,已经无法适应现代企业的需求。
随着计算机技术和通信技术的迅速发展,将传统的人工考勤管理计算机化,建立一个高效率的、无差错的考勤管理系统,能够有效的帮助企业实现“公正考勤,高效薪资”,使企业的管理水平登上一个新的台阶。
企业考勤管理经过如下的业务流程:(1)员工基本信息管理,添加,删除,更改(2)员工考勤管理,员工根据自己的班次在上下班时分别进行出勤操作,采用手动方式或者使用划卡机。
由人事部门专门的人员管理出勤和退勤信息。
(3)一般在每个月月初进行考勤汇总,汇总信息包括工作日的出勤情况、请假天数、出差天数、休假天数和不同性质的加班记录等。
1.2研究目的待开发的系统的名称为企业职工在线考勤系统;我们以中小型企业的考勤管理业务为依托,结合科学管理的理论,设计并开发一个企业考勤管理信息系统,提供一个科学合理的考勤管理解决方案,彻底实现无纸化作业。
根据管理权限的不同,将界面分为一般职员、部门经理、系统管理员和最高管理者四个层次,系统目标如下:(1)提供简单、方便的操作。
(2)根据企业原来的考勤管理制度,为企业不同管理层次提供相应的功能。
(3)通过考勤管理无纸化的实现,使企业的考勤管理更加科学规范。
(4)节省考勤管理的成本。
(5)提高企业考勤管理的透明度和效率,防止“虚假出勤“的现象。
(6)对系统提供必要的权限管理。
(7)为企业实现整体信息化的其他相关系统提供必要的数据支持。
1.3理论基础的分析本设计利用server 2005建立数据库,表格化存储,利用表的查询,连接,修改,删除数据等管理员工信息,对数据库设定必要的权限,只有具有权限的人才能进行查看,修改数据。
1.4预期结果和意义考勤系统能实现职工日考勤记录,记录请假信息,记录出差信息等功能,并最终所有信息归入月统计中去。
本考勤系统建立了一个高效率的、无差错的考勤管理系统,能够有效的帮助企业实现“公正考勤,高效薪资”,使企业的管理水平登上一个新的台阶。
2需求分析2.1功能需求(1) 数据管理功能是设置和管理基础数据,包括加班、请假类别的定义和班次的定义,在全县范围内可以进行基础数据的添加、删除和修改。
(2) 考勤管理包括出勤动作、出勤信息的查询;上级对下级员工的出勤信息的确认;生成考勤统计信息并可以根据指定的条件进行查询。
实现从每日出勤到统计全部考勤信息的无纸化操作。
为方便数据传递和查阅,要根据需求提供不同时间短的考勤统计信息表。
(3) 加班管理对员工的加班时间进行统计,记录开始时间和结束时间,对加班信息实现添加,删除等操作。
(4) 请假管理可以提出请假申请,并完善请假信息,如请假开始时间,请假结束时间,请假的次数进行管理。
(5) 出差管理管理者安排员工出差,对出差时间,次数的管理。
2.2数据流图数据流图如图2.1所示2.1 数据流图2.3功能模块图如图2.2所示,图为功能模块图2.2 功能模块图2.4系统数据流程图如图2.3所示,图为数据流程图2.3 数据流程图3 概念结构设计3.1 局部E-R 图(1)员工E-R 图,如图3.1.1所示图3.1 员工E-R 图(2)图2.3.2 为出勤E-R 图图3.2 出勤E-R 图(3)图3.3为出差E-R图图3.3出差E-R图(4)加班E-R图如图3.4所示3.4 加班E-R图(5)请假E-R图如图3.5所示3.5 请假E-R图(6)月统计E-R图3.6 月统计E-R图3.2 整体E-R图如图3.7所示,图为整体E-R图结束时间3.7 整体E-R图4 逻辑结构设计4.1 关系模式职工(职工编号,姓名,性别,年龄)出勤记录(职工编号,出勤编号,上班时间,下班时间,缺勤记录)出差记录(职工编号,出差编号,开始时间,结束时间,统计天数)加班信息(职工编号,加班编号,加班开始时间,加班结束时间,加班时间统计)请假信息(职工编号,请假编号,请假开始时间,请假结束时间,请假时间统计)月统计(职工编号,出勤月统计,出差月统计,加班月统计,请假月统计)4.2数据关系图如图4.2.1所示,在数据库中生成的关系图中,员工编号是员工信息表的主键,是其他表的外键。
图4.1 数据关系图5 物理结构设计5.1存储记录结构设计在物理结构中,数据的基本存取单位是存储记录。
有了逻辑结构以后,就可以设计存储记录结构,一个存储记录可以与多个逻辑记录相对应。
存储记录就包括记录的组成,数据项的类型和长度等。
在本图中5.1职工信息表主要包括职工编号,姓名,性别,年龄表5.1 职工信息表在本表5.2中出勤记录包含职工编号,出勤编号,上班时间,下班时间,缺勤记录表5.2 出勤记录表在本图5.3中出差记录职工编号,出差编号,开始时间,结束时间,统计天数表5.3 出差记录表在本表5.4中加班记录表主要包含职工编号,加班编号,开始时间、结束时间。
时间统计表5.4 加班记录表在本表5.5中,请假记录表主要包括职工编号,请假编号,请假开始时间和请假结束时间组成表5.5 请假记录表在本图5.6中月统计主要包括职工编号,出勤月统计,出差月统计,请假月统计,加班月统计表5.6 月统计记录表5.2创建索引为mounth_note在w_id上创建唯一索引Create index M1 on mounth_note(w_id)GoExec sp_helpIndex mounth_note6 数据库实施6.1建立数据库CREATE DATABASE workerON( NAME=worker_data,FILENAME='f:\worker.mdf',SIZE=3,FILEGROWTH=1)LOG ON( NAME=worker_LOG,FILENAME='C:\worker_log.ldf',SIZE=1,MAXSIZE=50,FILEGROWTH=10%)6.2数据表的创建(1)如图6.1所示员工信息表(worker)CREATE TABLE worker( W_id CHAR(4) CONSTRAINT worker_Prim PRIMARY KEY,w_name CHAR(6) not null,SEX CHAR(2) CONSTRAINT SEX_Chk CHECK(SEX='男'OR SEX='女') not null, AGE INT not null,w_drgee VARCHAR(4) NOT NULL,)图6.1 员工信息表(2)如图6.2所示出勤记录表(work_note)CREATE TABLE work_note( W_id CHAR(4),w_num int ,CONSTRAINT work_note_Prim PRIMARY KEY(W_id,w_num), work_tim datetime,end_tim datetime,work_note datetime,)图6.2 出勤记录(3)如图6.3所示出差记录表(out_note)CREATE TABLE out_note( W_id CHAR(4),out_num int ,CONSTRAINT out_note_Prim PRIMARY KEY(W_id,out_num), out_tim datetime,back_tim datetime,out_days int,)图6.3 出差记录(4)如图 6.4所示加班记录表(over_note)CREATE TABLE over_note( W_id CHAR(4),over_num int ,CONSTRAINT over_note_Prim PRIMARY KEY(W_id,over_num), over_tim datetime,overend_tim datetime,over_days int,)图6.4 加班记录(5)如图6.2.5所示请假记录表(off_note)CREATE TABLE off_note( W_id CHAR(4),off_num int ,CONSTRAINT off_note_Prim PRIMARY KEY(W_id,off_num), off_tim datetime,offend_tim datetime,off_days int,)图 6.5 请假记录(6)如图6.6所示月纪录表(mounth)CREATE TABLE mounth_note( w_id CHAR(6) CONSTRAINT mounth_Prim PRIMARY KEY, work_note int not null,out_note int,over_note int,off_note int,)图6.6 月统计记录表6.3建立存储过程如图6.7所示建立一个向员工出勤表中插入数据的存储过程CREATE PROCEDURE insert_in(@W_id CHAR(4),@w_num int ,@work_tim datetime ,@end_tim datetime ,@work_note datetime)ASinsert into work_notevalues(@W_id, @w_num, @work_tim ,@end_tim ,@work_note )goexecinsert_in@W_id='0001',@w_num=1,@work_tim='2010/11/1' ,@end_tim='2010/11/ 1' ,@work_note=nullgoselect *from work_note图6.7 运行结果6.4创建触发器(1)建立一个触发器,当想考勤记录中添加一条新的考勤记录时,触发统计该员工一个月的考勤记录,并存入月统计的月考勤记录表中。