1、软件学院课程设计报告书课程名称数据库原理及应用设计题目 工资管理系统专业班级 学号姓名指导教师 目录1设计时间 32设计目的 33设计任务 34设计内容 44.1 需求分析 44.1.1 数据分析 44.1.2 功能分析 54.2 系统设计 54.2.1 概念结构设计 54.2.2 逻辑结构设计 74.2.3 物理结构设计 74.3 系统实施 94.3.1 数据库实现 94.3.2 数据载入 124.4 运行与测试 134.4.1 运行与测试 134.4.2 分析 165总结与展望 17参考文献 181设计时间年 月日 年 月 日2设计目的数据库原理及应用课程设计是软件工程专业集中实践性环节之
2、一,是学习完数据库 原理及应用课程后进行的一次全面的综合练习。其目的在于加深对数据库基础理论和基 本知识的理解,掌握使用数据库进行软件设计的基本方法,提高运用数据库解决实际问题 的能力,最终实现对于给定的应用环境,构造最优的数据库模式,建立数据库及其应用系 统,使之能够有效地存储数据,满足各种用户的应用需求 (信息要求和处理要求)。同时, 此次设计对于同学将来的毕业设计和具体工作实践将有重要的意义。针对于本次设计的课题工资管理系统,通过E-R图,逻辑结构、物理结构、概念结构三方面分析该系统的实体、 属性、以及之间的联系,从各个方面全面了解分析课题,同时,也更掌握了基础知识,深 入了解各部分含义
3、。3设计任务工资管理系统(1)目标:1) 实现月工资计算和打印输出相应的工资表格;2) 实现与工资管理有关的档案管理。3) 提高工资管理工作效率,降低出错率。(2)功能要求:档案管理1) 保存有关工资计算以及工资管理所必须的数据2) 能对各种数据进行插入、修改、删除等操作3) 能对数据进行查询、统计工资计算1) 正确计算出个人月工资、部门月工资以及全厂月工资。2) 能对病假扣款系数进行修正。3) 能打印输出工资计算表、个人工资单、部门工资单、工资汇总表四种表格。数据要求:每个职工的各种数据分为三类:1) 职工的代号、姓名、性别、出生日期、参加工作日期、所属部门、人员类别、工种职别、技术等级、技
4、术职称、文化程度、民族、籍贯、现住址。2) 职工的基本工资、岗位津贴、物价补贴、职务津贴、住房补贴、房租。3) 职工的出勤日数、公伤日数、产假日数、病假日数、旷工日数、事假日数、 加班日数、夜班日数、病假系数。工资单数据:本月基本工资、岗位津贴、物价补贴、职务津贴、住房补贴、加班费、夜班费、房租、 病假扣款、事假扣款、旷工扣款、其它扣款、实发工资。4设计内容4.1 需求分析4.1.1 数据分析数据库的设计是指对于一个给定的应用环境,构造最有效的数据库模式,建立数据及 应用系统,实质能够有效地存储数据,满足用户的需求,数据库设计是在数据库管理系统 支持下进行的。根据数据流程图,可以列出以下数据项
5、和数据结构:员工信息:职工的代号、姓名、性别、出生日期、参加工作日期、所属部门、人员类 别、工种职别、技术等级、技术职称、文化程度、民族、籍贯、现住址。考勤管理:工号,姓名,月份,本月天数,公休天数,出勤天数,出勤,旷工,年休,请假,迟 至L早退,假日加班,其它加班,补休天数,出差,加班费,扣考核,其它,备注。员工评价:工号,姓名,工作态度,各种奖励及处罚,技术水平,备注。工资管理:工号,姓名,底薪,奖金,补贴,加班,养老金,医疗保险,公积金,实发工资, 月份。部门管理:编号,名称,部门经理。管理员:编号,用户名,口令。4.1.2 功能分析要求具备如下基本功能:基本工种、基本工资的管理;公司部
6、门、部门津贴、员工的管理;加班类型、加班津贴的管理;公司员工的考勤信息管理;公司员工月工资管理月工资=基本工资+部门津贴+加班津贴被扣工资 查询统计上述信息,进行企业工资报表。4.2 系统设计4.2.1 概念结构设计图1员工工资实体-属性图18图2员工基本信息实体-属性图图3员工出勤实体-属性图图4总E-R图4.2.2 逻辑结构设计员工信息表(员工代号,姓名,性别,出生日期,参加工作日期,所属部门,人员类 别,工种职别,技术等级,技术职称,文化程度,民族,籍贯,现住址 )员工考勤表(员工代号,出勤日数,公伤日数,产假日数,病假日数,旷工日数,事 假日数,加班日数、夜班日数,病假系数)员工津贴表
7、(员工代号,岗位津贴,物价补贴,职务津贴,住房补贴,房租)员工月工资表(员工代号,基本工资,岗位津贴,物价补贴,职务津贴,住房补贴, 加班费,夜班费,房租,病假扣款,事假扣款,旷工扣款,其它扣款,实发工资)4.2.3 物理结构设计1、员工信息表字段名称中文名称长度是否为空主关键字sno员工代号Varchar20NYname姓名char20NNsex性别char20NNbirthday出生日期char20NNdate参加日期char20NNpart所属部门char20NNliebie人员类别char20NNzhibie工种职别char20NNdengji技术等级char20NNzhicheng技
8、术职称char20NNwenhua文化程度char20NNminzu民族char20NNjiguanchar50NNzhuzi现住址char50NN2、员工考勤表字段名称中文名称长度是否为空主关键字sno员工代号Varchar20NYchuqin出勤日数char20NNgong公伤日数char20NNcan产假日数char20NNbing病假日数char20NNkuang旷工日数char20NNshi事假日数char20NNjiaban加班日数char20NNyeban夜班日数char20NNbingxi病假系数char20NN3、员工津贴表字段名称中文名称长度是否为空主关键字sno员工代号c
9、har20NYgangwei岗位津贴char30NNwujia物价补贴char30NNzhiwu职务津贴char30NNzhufang住房补贴char30NNfangzhu房租char30NN4、员工月工资表字段名称中文名称长度是否为空主关键字sno员工代号Varchar20NYjiben基本工资char20NNgangwei岗位津贴char30NNwujia物价补贴char30NNzhiwu职务津贴char30NNzhufang住房补贴char30NNjiaban加班费char30NNyeban夜班费char30NNfangzhu房租char30NNbingkou病假扣款char30NNsh
10、ikou事假扣款char30NNkuangkou旷工扣款char30NNqitakou其它扣款char30NNshifa实发工资char30NN4.3 系统实施4.3.1 数据库实现1、表的创建:CREATE TABLE xinxi(sno Varchar(20) PRIMARY KEY, name char(20) NOT NULL, sex char(20) NOT NULL, birthday char(20) NOT NULL, Ydate char(20) NOT NULL, part char(20) NOT NULL, liebie char(20) NOT NULL, zhib
11、ie char(20) NOT NULL,dengji char(20) NOT NULL, zhicheng char(20) NOT NULL, wenhua char(20) NOT NULL, minzu char(20) NOT NULL, jiguan char(50) NOT NULL, zhuzi char(50) NOT NULL )CREATE TABLE kaoqin(Ysno Varchar(20) PRIMARY KEY, chuqin char(20) NOT NULL, gong char(20) NOT NULL, can char(20) NOT NULL,
12、bing char(20) NOT NULL, kuang char(20) NOT NULL, shi char(20) NOT NULL, jia char(20) NOT NULL, ye char(20) NOT NULL, bingxi char(20) NOT NULL )CREATE TABLE jintie(sno Varchar(20) PRIMARY KEY, gangwei char(30) NOT NULL, wujia char(30) NOT NULL, zhiwu char(30) NOT NULL, zhufang char(30) NOT NULL, fang
13、zhu char(30) NOT NULL )CREATE TABLE yuegongzi(sno Varchar (20) PRIMARY KEY,jibenchar (20) NOT NULL,gangwei char (30) NOT NULL , wujia char (30) NOT NULL , zhiwu char (30) NOT NULL , zhufang char (30) NOT NULL , jiabanchar (30) NOT NULL ,yeban char (30) NOT NULL , fangzhu char (30) NOT NULL , bingkou
14、char (30) NOT NULL ,shikou char (30) NOT NULL , kuangkou char (30) NOT NULL , qitakou char (30) NOT NULL , shifa char (30) NOT NULL , )2、工资的计算: 1)计算个人月工资。select sname,sum(jiben)+sum(gangwei)+sum(wujia)+sum(zhiwu)+sum(zhufang)-sum(fang zu )-sum(shijia)-sum(bingjia)+sum(jiaban)+sum(yeban)from yuegongz
15、i group by sno;2)计算部门月工资。select part,sum(shifa) from yuegongzi,employees where yuegongzi.sno=employees.sno group by part;3)计算全厂月工资。select sum(shifa)from yuegongzi;4.3.2数据载入数据载人表(1)一员工信息表员工代号姓名性别出生日期现住址001A男19900807大连市沈阳市002B女19900209新疆市新疆市003C男19900111抚顺市抚顺市004D男女19901208大连巾鞍山市大连巾005E19900924重庆市006F
16、男19901004沈阳市沈阳市007G男19901124大连巾大连巾008H男19901228大连市沈阳市009I女19900912鞍山市鞍山市010J女19901211沈阳市沈阳市数据载人表(2)一员工考勤表员工代号出勤日数公伤日数产假日数病假日数病假系数001300000002300000003300000004300000005270030.1006290100.03007300000008300000009300000010300000数据载入表(3)员工津贴表:员工代号岗位津贴物价补贴职务津贴住房补贴房租0012001001003001200023001001002001800032
17、00100300150160004200100100240200005300100200190200006200100100270150007200100100260150008200100100300170009290100150300170010200100100300170数据载人表(4)一员工工资表:员工代号基本工资岗位津贴物价补贴职务津贴 其它扣款实发工资00112001007080 150130000211001106090 10012600031200908010090138000413001007085 7514800051400120757040150000612002006
18、0956015700071000130709080140000810501008080 10013000099801109085401250010140012080705015504.4运行与测试4.4.1运行与测试5Q1 查询分析事 E8. Aaster. KSYdKinistra-tor 无标题 1*1少文件3)铜辑查询工具(X)窗口心帮助蜀白。国/电亳囱轴c E3,yCREATE TABLE itinici (sno Varthar (20 PRIJUURY KEY, nwue char (20) NOT NULL, sex char 20) JDT NULLj birthdr char
19、(20) NOT NULL$ Ydate char(2C) MOT ITULU part char 20)十口 NUL二 liebie char20) NOT NULL, zhibie char-20) NOT MILL, deneji char- 20) MU MJL- zhichcnfi char 20) N,:T IIUL.j wenhua char(20) NOT NULL, ninzu char (20) NOT NULL, j Lguan char - 50J NuT NJLL, zhuii chariSO) MOT NULLselect * from. sinL竟令已玳功完成。图
20、1创建并查询职工信息表代码截图力 SQL SitvEi Eiiterpiise au(&t - *karqin* 甲的费& 玲售。B*utft* 扎 *(loc*Lp 上Mm ; - r?2J口 X JlfV-rh hTib o。口 nd*Q*o!oiQcn-on-ofltQfl号支件如m银助工(9至2亘i医,llttb如in1 江1e近乜h叫前jiI愠即0C1加Qa0a0a00常3000000a0Q0C3W0Q0000tQOCTS06t)00a0005A!V T0Q30000O.Locc2101000000.03or300GD0000Qoce3000D00a0iD0M3D0ag00a0Q咖a
21、ag00aQQ图2数据库中职工考勤表截图图3查询考勤表结果截图SQL Server Enterprise axiaf,r -表 14 i ic中的数据.技强是,3七匕工* 中、* localy h I箱文件 营口口 帮前滑瓦口理 汤!曦牛 九中蛇吃4(anpr4i*也1*rhivuwhufgf在小*乩0012GDtooL00300IE000?0Q1001002WiaoX32001003001?C160004200100LOO7 a200WS300100SOO19020000620G100LM2湎150OCT200100LOO150006加0W0100粕01T0009290W0150到0170I
22、D200LOO100300170*_=图4数据库中职I津贴表截图1-同,氏KUFtel LdaiXTii Tt zvIiie而标, 1 -XY)xb #X:3DJ 耽 MX 0 diwfw r mu. 修虹,北二ME fr 磬SbOf/TE TULE 事骷iTm y配小u 却 fkum? Kn, YzanrHi dhae 30 区匚 lffTLLP TM-如丁斯电F.iS 讪ie ;hw :Q T nJUP 讪uf 730 HO : MU代小机箭M:LTl f.BlEl,Ybji,Tituf &TfTfulg001 2(Xllwi:in? 3CnISOma闻03 200110解闻迎2MIMH。
23、201ms joe1Wl都W5in*0151Ml DC1ID和口制00i 2MIMINffi 2MIM,的HI图5查询津贴表结果截图f脐R.lister. dbn.T牺 TjibtftT血”他琼加1155伙tMlifi事加 Ibiickn Yshikou Thantkra HUM bhiftt001聊删?0我聃W利聃棺町聊阿2002 1100110的如SO勃100IS励曲的1!0如3003 1200no80如转网V5。45&)的ItO1湖q004 1300如50TO50册船70TD的90如删5005 HOIK50用80如的!070g。80腼6oh m部$0TQ100m90和80用8Q:1曲70
24、01 M加靶如她90蓟TO初8。的加闻8on网。如和8。如10列8Q物附8Q町g009 ISOO8。40E080EQ4014wW颂加1和加1001加如用的泄图6职工月工资表结果截图inserta-luesCOl 1CREATE ABLE kaoqin Hq Varchr(20) FKIHARY KEY. chuqin char(2D: PICT HULL.gong canchai (20J NOT 刖LJchariEOJ NOTJULL,(所船响的行数为1行)图7插入员工K的信息在信息表中17O JTI Krhe re sno OilCREATE TABLEaoqxrtlYstio VarcK
25、ar (20j PRIMARY KEY, 彳I-。所影晌的行数为1行)图8删除信息表中员工K的信息tipdate xircui set jiEuan-上海:CREATE TABLE kaoq.inLYsnc Var char (2D) PRIIflARY KEY,(所景多响的行麴为10行)图9更新信息表中的籍贯为上海4.4.2分析软件测试是保证软件质量的关键,它是对需求分析设计和编码的最后复审。在软件生 命周期的每个阶段,都不可避免地会产生错误:1)在数据的插入的过程中,插入的时候错误提示:出现将截断字符串或二进制数据。语 旬已终止。出现错误的原因:输入的字符串长度超过用户自定义长度解决方法:
26、改变用户自定义长度或者改变登录数据的长度2)在编程序时第一次的时候没有设置工资计算表,导致在运行时不能正常进行运算,改进方法:增加一个工资计算表,在统计工资的时候利用工资计算表及之前录入的数据进行计算,导出工资表。通常在编写出每个原程序后,就要对它进行必要的测试,这步工作自己来完成。此后 由专门的测试人员进行各种综合测试。了解程序的内部结构和处理过程,对程序中重要的 逻辑路线进行测试,在不同点检查程序状态,确定实际状态与时期的状态是否一致 25总结与展望一个完整的企业人事信息管理系统就创建完毕了。在本系统的设计与实现的过程中主要讲述了企业人事管理信息系统的系统设计部分,包括功能模块设计、数据库
27、结构设计等。 系统设计为整个程序构建了骨架,各个功能模块实现各个细节部分。系统的详细设计根据 系统分析阶段的结论将系统具体化,并完成了各个模块的添加、修改、删除与查询的功能 直到最后形成一个完整的可行性的管理系统。部门月工资和个人月工资,其实是用查询, 通过SQL语句计算得出相应的值!但是该系统仍旧有一点不足,打印功能未能实现!所以 还有待加强!通过我们的亲身实践和学习懂得了许多道理,也学到了许多课上没有学到的东西。在 实训中,也遇到了许多困难,但通过老师和同学的帮助、指导所有问题都得到了解决,也 使自己对一些问题有了新的看法和认识。 课程设计是开放教育试点专业学生整个学习过程 中的一个重要实
28、践环节,是学生运用所学知识分析问题、解决问题以及培养动手操作能力 的一个重要过程,也是学生在校学习期间学习成果的综合总结,它对于培养学生的科研能 力,提高其综合能力及全面素质具有重要的意义。参考文献1数据结构系统概论(第 4版)作者:王珊 萨师熠高等教育出版社2卢毅主编:Visual Basic 6.0数据库设计实例导航,科学出版社2001年版3屈辉立,陈可明,石武信.JSP网站编程教程M.第1版,北京:北京希望电子出版社,200524白勇.用B/S模式构建在线考试系统J,重庆电力高等专科学校学报,2003,10(4): 100130.5 Jiang Guo,Yuehong Liao,Behzad Parviz.A Survey of J2EE Application Performance Management SystemsJ,Proceedings of the IEEE International Conference on Web Services (ICWS04),2004.6(5):1732.6 VB 数据库管理范例:http: