毕业设计-人员信息管理系统.doc
《毕业设计-人员信息管理系统.doc》由会员分享,可在线阅读,更多相关《毕业设计-人员信息管理系统.doc(23页珍藏版)》请在咨信网上搜索。
第 23 页 共 23 页 课 程 设 计 课程名称___数据库原理课程设计_ 题目名称 人员信息管理系统 学生学院 计算机学院 专业班级 计算机科学与技术八班 学 号 学生姓名 指导教师 左亚尧 20 13 年 1 月 16 日 目 录 一、引言…………………………………………………………….……2 二、需求分析…………………………………………………………….2 三、概念结构设计………………………………………………………8 四、逻辑结构设计………………………………………………………9 五、物理结构设计………………………………………………………10 六、数据库装载与实施………………………………………………11 七、系统设计及测试数据库……………………………………………15 八、实现的主要功能与代码及使用说明………………………………20 九、设计环境……………………………………………………………21 十、心得体会………………………………………………………21 一、引 言 1.1课程设计选题 <<人员信息管理系统>>; 1.2本选题的设计背景 为了方便企业更好的管理员工,员工更好的查询自己的信息。设计了这个分管理员与员工两种用户的人事管理系统。 二、需求分析 企业人事管理系统是为企业人事部门能更好的管理人员而设计的,该系统能达到快捷、方便人事部门对人员的管理,基于管理员设计的。 2.1、系统功能模块 企业人事管理系统分为六个模块:员工信息管理模块、出勤管理模块、工资管理模块、福利管理模块、培训管理模块、奖罚管理模块 1、 员工模块:对本员工的基本信息进行查询、修改个人密码,选修培训课。 2、 管理员模块:有条件的对员工信息、部门信息、职位信息、工作信息查询;修改和删除员工信息、部门信息、职位信息;增加员工信息、部门信息、职位信息。 通过对企业相关人员深入地进行交流,亲身参加业务工作了解业务活动,知道了该企业具体的需求,做了如下的分析: 2.2、信息需求 员工信息:员工编号、姓名、性别、电话、出生日期、学历、工作日期 部门信息:部门编号、部门名称、部门人数 职位信息:职位编号、职位名称、职位人数,职位等级 工资信息:工资等级编号、基本工资/月、加班工资/天、请假扣款/天、分红百分比/季 福利信息:养老保险、失业保险、生育保险、医疗保险、工伤保险、住房公积金 出勤信息:工作时间、出勤类别编号、出勤类别名称(白/夜/中)。 奖罚信息:奖罚编号、奖罚项目、奖罚金 课程信息:课程编号、课程名、学时、教材; 2.3、建立数据字典 2.3.1数据项 (1) 员工信息表:(Employee) 员工信息:员工编号、姓名、性别、电话、出生日期、学历、工作日期、密码,工资编号、部门编号,职位编号,出勤类别编号 数据项名 数据别名 数据类型 取值范围 是否为空 说明 员工编号 Employee_no Varchar(20) Not null 主键 姓名 Employee_name Varchar(20) Not null 性别 Employee_sex Varchar(20) 男或女 出生日期 Employee_birth datament Not null 工作日期 Employee_work_date datement Not null 电话 Employee_phone_no Varchar(20) 密码 Employee_password Varchar(20) 工资等级编号 Salary_degree_no Varchar(20) 外键 部门编号 Department_no Varchar(20) 外键 职位编号 Occupation_no Varchar(20) 外键 出勤类别编号 Work_type_no Varchar(20) 外键 (2) 部门信息表:(Department)部门编号、部门名称、部门人数。 数据项名 数据别名 数据类型 取值范围 是否为空 说明 部门编号 Department_no Varchar(20) Not null 主键 部门名称 Department_name Varchar(20) Not null 部门人数 Department_totality Int (3) 职位信息表:职位编号、职位名称、职位人数,职位等级。部门编号 数据项名 数据别名 数据类型 取值范围 是否为空 说明 职位编号 Occupation_no Varchar(20) Not null 主键 职位名称 Occupation_name Varchar(20) Not null 职位人数 Occupation_totality Int 职位等级 Occupation_degree Varchar(20) 部门编号 Department_no Varchar(20) 外键` (4) 工资信息表:(Salary) 工资编号、工资等级、基本工资/月、加班工资/天、请假扣款/天、分红百分比/季。 数据项名 数据别名 数据类型 取值范围 是否为空 说明 工资等级编号 Salary_degree_no Varchar(20) Not null 主键 基本工资/月 Elementary_salary float 0----15000 加班工资/天 Extra_work_salary float 0---1500 请假扣款/天 Cut_payment float 0---1500 分红百分比/季 Bonus_percentage Varchar(20) (5) 福利信息表:(Welfare) 养老保险、失业保险、生育保险、医疗保险、工伤保险、住房公积金。员工编号 数据项名 数据别名 数据类型 取值范围 是否为空 说明 养老保险 Endowment_insurance float 失业保险 Unemployment_insurance float 生育保险 Birth_insurance float 医疗保险 Medical_insurance float 工伤保险 Accident_insurance float 住房公积金 House_found float 员工编号 Employee_no Varchar(20) 外键 (6) 出勤信息表:(Work)工作时间、出勤类别编号、出勤类别名称(白/夜/中)。 数据项名 数据别名 数据类型 取值范围 是否为空 说明 工作时间 Work_time int 0--24 出勤类别编号 Work_type_no Varchar(20) Not null 主键 出勤类别名称 Work_type Varchar(20) (7) 奖罚信息表:奖罚编号、奖罚项目、奖罚金 数据项名 数据别名 数据类型 取值范围 是否为空 说明 奖罚编号 Reword_punish_no Varchar(20) Not null 主键 奖罚项目 Rework_punish_name Varchar(20) 奖罚金 Reword_punish_found float 0---10000 (8) 选课信息表:时间、成绩、员工编号、课程编号 数据项名 数据别名 数据类型 取值范围 是否为空 说明 时间 Select_time datetime 成绩 Grade float 0---100 员工编号 Employee_no Varchar(20) 外键(与Course_no)构成主键 课程编号 Course_no Varchar(20) 外键(与Employee_no)构成主键 (9) 接受惩罚信息表:时间、员工编号、奖罚编号 数据项名 数据别名 数据类型 取值范围 是否为空 说明 时间 Time datetime 员工编号 Employee_no Varchar(20) 外键(与Employee_no)构成主键 奖罚编号 Rework_punish_no Varchar(20) 外键(与Employee_no)构成主键 (10) 课程信息表:课程编号,课程名,学时,教材。 数据项名 数据别名 数据类型 取值范围 是否为空 说明 课程编号 Course_no Varchar(20) Not null 主键 课程名 Course_name Varchar(20) Not null 学时 Course_time int 教材 Course_book Varchar(20) 2.3.2 数据结构 名称 别名 含义 组成 员工信息表 Employee 员工基本信息 员工编号、姓名、性别、电话、出生日期、学历、工作日期。密码,工资编号、部门编号,职位编,出勤类别编号 部门信息表 Department 部门基本信息 部门编号、部门名称、部门人数。 职位信息表 Occupation 职位基本信息 职位编号、职位名称、职位人数,职位等级。部门编号 工资信息表 Salary 工资基本信息 工资编号、工资等级、基本工资/月、加班工资/天、请假扣款/天、分红百分比/季。 福利信息表 Welfare 福利情况基本信息 养老保险、失业保险、生育保险、医疗保险、工伤保险、住房公积金。员工编号 出勤信息表 Work 工作情况基本信息 工作时间、出勤类别编号 出勤类别名称(白/夜/中)。 惩罚信息表 Rework 惩罚情况基本信息 奖罚编号、奖罚项目、奖罚金 选课信息表 Select_Course 员工选课情况基本信息 时间、成绩、员工编号、课程编号。 课程信息表 Course 课程基本信息 课程编号,学时,课程名 接受惩罚信息表 Acdept_Rework 员工惩罚情况基本信息 时间、员工编号、奖罚编号 三、概念结构设计 3.1、整体E-R图设计 四、逻辑结构设计 4.1 逻辑结构表 员工信息(Employee):员工编号、姓名、性别、电话、出生日期、学历、工作日期,密码。工资编号、部门编号,职位编号,出勤类别编号 部门信息(Department):部门编号、部门名称、部门人数。 职位信息(Occupation):职位编号、职位名称、职位人数,职位等级。部门编号 工资信息(Salary):工资等级编号、基本工资/月、加班工资/天、请假扣款/天、分红百分比/季。 福利信息(Welfare):养老保险、失业保险、生育保险、医疗保险、工伤保险、住房公积金。员工编号 出勤信息(Work):工作时间、出勤类别编号、出勤类别名称(白/夜/中)。 奖罚信息(Rework):奖罚编号、奖罚项目、奖罚金。 课程信息(Course):课程名,学时,课程编号,教材。 选课信息(Select_Course):时间、成绩、员工编号、课程编号。(课程名和课程编号共同组成主码,同时课程名是课程信息表的外码,员工编号是员工信息表的外码) 接受惩罚信息(Accept_Rework):时间、员工编号、奖罚编号(奖罚编号和课程编号共同组成主码,同时奖罚编号是奖罚信息表的外码,员工编号是员工信息表的外码) (以上蓝颜色的是表的主码,红颜色的是外码)以上表全部达到三范式。 4.2数据库关系图 五、 物理结构设计 5.1、数据的存放位置及系统配置 六、 数据库装载、实施 6.1用SQL SEVER 2008建立数据库。 6.1.1用SQL 语句建立表: create database mypersonal use personal create table Password( Employee_no Varchar(20) primary key not null, foreign key(Employee_no) references Employee(Employee_no), Employee_password Varchar(20), ) create table Employee( Employee_no Varchar(20) primary key not null, Employee_name Varchar(20) null, Employee_sex Varchar(20)check(Employee_sex = '男' or Employee_sex = '女'), Employee_birth datetime null, Employee_work_date datetime null, Employee_phone_no Varchar(20), Salary_degree_no Varchar(20), Department_no Varchar(20), Occupation_no Varchar(20), Work_type_no Varchar(20), foreign key(Salary_degree_no) references Salary(Salary_degree_no), foreign key(Department_no) references Department(Department_no), foreign key(Occupation_no) references Occupation(Occupation_no), foreign key(Work_type_no) references Work(Work_type_no), ) create table Department( Department_no Varchar(20) primary key not null, Department_name Varchar(20) null, Department_totality Int, ) create table Occupation( Occupation_no Varchar(20) primary key not null, Occupation_name Varchar(20) not null, Occupation_totality Int, Occupation_degree Varchar(20), Department_no Varchar(20), foreign key(Department_no) references Department(Department_no), ) create table Salary( Salary_degree_no Varchar(20) primary key not null, Elementary_salary float check(Elementary_salary > 0 and Elementary_salary <15000), Extra_work_salary float check(Extra_work_salary > 0 and Extra_work_salary <1500), Cut_payment float check(Cut_payment > 0 and Cut_payment <1500), Bonus_percentage Varchar(20), ) create table Welfare( Endowment_insurance float, Unemployment_insurance float, Birth_insurance float, Medical_insurance float, Accident_insurance float, House_found float, Employee_no Varchar(20), foreign key(Employee_no) references Employee(Employee_no), ) create table Work( Work_time int check(Work_time >0 and Work_time < 24), Work_type_no Varchar(20) primary key not null, Work_type Varchar(20), ) create table Rework( Reword_punish_no Varchar(20) primary key not null, Rework_punish_name Varchar(20), Reword_punish_found float check(Reword_punish_found > 0 and Reword_punish_found <10000) ) create table Select_Course( Select_time datetime, Grade float check(Grade > 0 and Grade < 100), Employee_no Varchar(20), Course_no Varchar(20), primary key(Employee_no,Course_no), foreign key(Employee_no) references Employee(Employee_no), foreign key(Course_no) references Course(Course_no), ) create table Accept_Rework( Time datetime, Employee_no Varchar(20), Reword_punish_no Varchar(20), primary key(Employee_no,Reword_punish_no), foreign key(Employee_no) references Employee(Employee_no), foreign key(Reword_punish_no) references Rework(Reword_punish_no), ) create table Course( Course_no Varchar(20) primary key not null, Course_name Varchar(20), Course_time int, Course_book Varchar(20), ) 6.1.2插入一些数据后: (1) 、接受惩罚信息(Accept_Rework): (2) 、员工信息(Employee): (3) 、部门信息(Department): (4) 、职位信息(Occupation): (5) 、工资信息(Salary): (6) 、福利信息(Welfare): (7) 、出勤信息(Work): (8) 、奖罚信息(Rework): (9) 、课程信息(Course): (10) 、选课信息(Select_Course): 七、 系统设计及测试数据库 7.1登录模块: 登录界面分为管理员、用户登录两种,不同用户根据自己的编号与密码进行登录(用户的数据都已经录入数据库)。登录时会根据员工编号与密码进行数据库查询并反馈回来,进行员工登录、管理员登录;没有则报错。 7.2管理员模块 (1) 、查询修改界面 根据部门名称与职位名称进行查询,方便管理员查看用户。对表进行查询。 (2) 、增加信息界面: 增加部门信息,职位信息、奖罚信息,对表进行插入。如果遇到插入值是主属性,且在表中存在,则系统会做出错处理。(不违反实体完整性规则) 现在增加职位信息 (3) 、删除信息界面: 对选课信息、员工信息、部门信息进行删除。对表执行删除操作。如果遇到表的属性石另一个表的外码则删除不了,系统会做出错处理。(不违反参照完整性规则) 现在删除部门名称为“eeeee”的部门。 7.3 员工模块 (1) 、员工菜单界面: (2) 、个人信息查询: (3) 、奖罚查询 (4) 、工作信息查询: (5) 、选课菜单: A、 员工选课: 员工根据课程表里的信息进行选课,进行了数据库的插入操作。 B、 选课查询:选了数学、英语后查询结果。 (6) 、密码修改: 员工对密码进行修改。如果两次输入的密码不正确则系统出错处理。 八、 实现的主要功能及代码及使用说明 8.1 实现的主要功能: 实现了对数据库数据的不同条件的查询、插入、删除、修改功能。 8.2 代码实现 见附录: 8.3 使用说明: 在myEclipse 里运行,并启动SQL SEVER 2008 ; 九、 设计环境: myEclopse + SQL SEVER 2008 十:心得体会 这次的课程设计是自己独立完成的,收获很大,深入理解了数据库理论与设计方法,把数据库应用到实际的应用系统中,并取得了实际成效。 刚开始做数据库课程设计的时候,对数据库设计的概念还很模糊,还不理解数据库设计的六个步骤。看了老师给的需求分析范文,再重新翻阅了数据库设计那章节,反复对比,思考。理清楚了数据库设计步骤的前四个步骤(需求分析、概念结构设计、逻辑结构设计,物理结构设计)但对物理结构设计理解还不是很深入。 然后进行数据库设计,第一步:需求分析(自己想设计怎样功能的系统),第二部:概念结构设计、第三部:逻辑结构设计,这些设计都不难。但对于物理结构设计,还不是很理解,只知道备份数据库文件与日志文件,还有配置一些存储大小信息,至于建立索引还不会。有待解决。 接着对自己的系统进行功能设计,大多数问题和难点都体现在系统连接数据库,对数据库查询、插入、删除功能。因为对java Swing 还不是很熟悉,对需求分析的一些功能模块不知道用怎样的形式显示出来。不断翻阅了java书籍,查阅了资料后,把大部分功能都实现了,并用java界面显示出来(虽然不是很好看)。 在用SQL语句进行查询、插入、删除的时候,开始时,很容易出错,差错误不怎么熟练,后来调试多了就很快排除了。还有,由于我建立的表都达到3范式,有时候查询起来很不方便,要连接很多表,而且有些查询的数据都差不多,做到最后的时候才想到建视图,然后进行查询,这样的话SQL语句就不用连接那么多表了,直接在视图里面查询。在进行插入、删除的时候,不能破坏实体完整性规则,与自定义完整性规则,参照完整性规则,我在这里只是做了不能插入、删除的处理。 在用java设计系统开始的时候结构不是很好,写了很多无用的代码,后来发现了,把他封装在一个类里面,要用的时候直接调用就行了如(SQLManage类),用java设计系统还有待提高。 做这次课程设计学到了很多东西,不像以前一样只需考虑好大概有几张表就开始动手做项目。那样显得不是很规范,虽然那样效率会相对来说比较高,成果会比较快。但是假如遇到复杂的数据库系统,考虑的不周全很有可能会对数据库进行重构,这样会很致命的。 总的来说,自己行动了收获了不少东西,同时知道了还有很多东西有待提高。- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 人员 信息管理 系统
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文