ImageVerifierCode 换一换
格式:DOCX , 页数:24 ,大小:321.46KB ,
资源ID:16940433      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/16940433.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据库系统原理课程设计报告Word文档下载推荐.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据库系统原理课程设计报告Word文档下载推荐.docx

1、2.2.1目标:实现月工资计算和打印输出相应的工资表格;实现与工资管理有关的档案管理。提高工资管理工作效率,降低出错率。2.2.2 功能要求:档案管理1保存有关工资计算以及工资管理所必须的数据2能对各种数据进行插入、修改、删除等操作3能对数据进行查询、统计工资计算1正确计算出个人月工资、部门月工资以及全厂月工资。2能对病假扣款系数进行修正。3能打印输出工资计算表、个人工资单、部门工资单、工资汇总表四种表格。2.2.3 数据要求:每个职工的各种数据分为三类:1职工的代号、姓名、性别、出生日期、参加工作日期、所属部门、人员类别、工种职别、技术等级、技术职称、文化程度、民族、籍贯、现住址。2职工的基

2、本工资、岗位津贴、物价补贴、职务津贴、住房补贴、房租。3职工的出勤日数、公伤日数、产假日数、病假日数、旷工日数、事假日数、加班日数、夜班日数、病假系数。工资单数据:本月基本工资、岗位津贴、物价补贴、职务津贴、住房补贴、加班费、夜班费、房租、病假扣款、事假扣款、旷工扣款、其它扣款、实发工资。根据开发计划、软硬件情况、人员配置情况,将员工工资管理系统的项目开发进度分为系统分析、需求分析、概要分析、详细设计、系统实施、系统维护六个阶段,具体进度安排如下:项 目1天2-3天7-9天1-2天长期系统分析需求分析概要设计详细设计系统实施系统维护第三章分析与设计3.1 系统分析 根据该企业的业务情况及实现目

3、标,系统功能模块图如图3.1所示:图3.1 系统功能模块在这次系统开发中我主要完成的部分是工资管理和设置方面。开发这个系统的目的就是帮助企业的财务主管部门提高工作效率,实现企业工资信息管理的系统化、规范化和自动化。能够和认识管理系统、考勤管理系统相结合,真正实现企业高效、科学、现代化的员工管理。系统最终实现的主要功能如下:企业工资信息设置部分:包括设置员工的基本工资和其他项目的金额,如津贴等。并且负责设置员工工资的计算公式。图3.2 工资信息设置模块企业工资信息管理部分:包括统计出勤、计算工资、查询工资和导出工资表。图3.3 工资信息管理模块系统部分:包括添加用户和修改密码。图3.4 系统模块

4、3.2 数据库设计数据库设计是开发数据库及其应用系统的技术,也是信息系统开发和建设的重要组成部分。具体的说,数据库设计是要在一个给定的应用环境中,通过合理的逻辑设计和有效的物理设计,构造较优的数据库模式,建立数据库及其应用系统,满足用户的各种信息需求。3.2.1 实体描述本系统中所涉及的实体有9个,其结构如下:员工(编号,姓名,性别,出生日期,文化背景,民族,家乡,家庭住址)部门(编号,名称)工龄(工龄,对应工资)职务(职务级别,对应工资)津贴类别(编号,名称 ,薪水)出勤类别(编号,名称, 系数)基本工资(员工,工龄,职务,基本工资)实际工资(员工,实际工资)用户(用户名,密码,权限)3.2

5、.2 联系描述本系统中实体之间有3个联系,其关系如下:(1)员工部门的所属关系:部门与员工是1:N的关系,一个部门有多个员工,但一个员工只属于一个部门;(2)员工出勤:员工与出勤是M:N的关系,一个员工可以有多种出勤情况,一种出勤情况可以对应多个员工;(3)员工津贴:员工与津贴是M:N的关系,一个员工可以有多种津贴情况,一种津贴情况可以对应多个员工;以上实体的联系属性如下:员工部门(员工,部门)员工出勤(员工,出勤,出勤天数)员工津贴(员工,津贴)3.2.3 E-R图本系统的E-R图如图3.5 所示:图3.5 E-R图3.2.4 存储过程设计存储过程(Stored Procedure)是在大型

6、数据库系统中,一组为了完成特定功能的SQL 语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。在我们的项目中,在添加工龄工资信息与职务工资信息中运用了存储过程,如果高级语言中函数调用一样,我们定义了5个参数,4个是输入参数,1个为输出参数,在判断向哪个表插入数据时,我们根据前两个参数来判断,然后根据输出参数的取值来查看操作是否成功。3.2.5触发器的设计触发器(trigger)是个特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由事件来触发,比如当对一个表进行操作( insert,delete, update)时就会激活它执行。

7、触发器经常用于加强数据的完整性约束和业务规则等。触发器可以从 DBA_TRIGGERS ,USER_TRIGGERS 数据字典中查到。在我们的项目中我们在删除职员信息时用到了触发器,我们的表设计中empandrsal、empandjintie 、DepAndEmp 、EmpAndPre 、EmpAndSal用引用了employees中的No属性,作为每个表的外键约束,当我们在删除employees表时就违反参照完整性的约束,必须把这些表中相应的元组也给删除,出于以上目的,我们把在删除外键约束定义成了一个触发器,根据employees中No的值来把相应表中的数据删除。第四章系统实现4.1 数据库

8、的实现4.1.1表定义(1)员工表(employees)主码字段代码字段名称数据类型长度小数位数可否为空*emp_No员工编号Varchar20Not nullemp_Name员工姓名emp_Sex性别emp_Born出生日期Dateemp_Cul文化程度emp_Nation民族emp_Homeland籍贯emp_Addr地址emp_PersonLel职务(2)部门(department)dep_No部门编号Intdep_Name部门名称(3)工龄(SalAndTime)sal_timeLev工龄sal_timeMoney对应工资Double(4)职务(SalAndTech)sal_techL

9、evsal_techMoney(5)津贴类别(jintie)jin_No津贴编号jin_Name津贴项目jin_Money(6)出勤类别(presence)pre_No出勤编号pre_Name出勤项目pre_Xishu对应系数(7)基本工资(EmpAndSal)emp_salEmpNOemp_salTimeLevemp_salTechLevemp_salary基本工资(8)实际工资(EmpAndRSal)emp_rsalEmpNoemp_rsalary实际工资(9)用户(user1)user_name用户名user_password密码user_power权限(10)员工部门(DepAndEm

10、p)dep_empEmpNodep_empDepNo(11)员工出勤(EmpAndPre)emp_preEmpNo用户编号emp_prePreNoemp_prePreDays出勤天数(12)员工津贴(EmpAndJintie)emp_jinEmpNoemp_jinJinNo4.1.2触发器与存储过程的实现/触发器drop trigger if exists del_onemployees;delimiter $create trigger del_onemployeesbefore delete on employeesfor each ROWbegindelete from empandrs

11、al where emp_rsalEmpNo =old.emp_No;delete from empandjintie where emp_jinEmpNo=old.emp_No;delete from DepAndEmp where dep_empEmpNo=old.emp_No;delete from EmpAndPre where emp_preEmpNo=old.emp_No;delete from EmpAndSal where emp_salEmpNO=old.emp_No;end $/存储过程create procedure insert_data( in sat int, in

12、 sate int,in jb int,in chb double precision,out sb int) set sb = 1; begin if (sat =1) then insert into SalAndTime values(jb,chb); elseif (sate=1) then insert into SalAndTech values(jb,chb); end if; end; set sb = 0;4.2 程序流程图程序流程图又称为程序框图,表示方法简单直观,是最早使用的一种模念模式,是用来描述处理执行的逻辑过程的,它把程序的基本步骤归纳为:处理、判断、输入输出、起始

13、和终结等几个基本功能,并用不同的记号加以表示,从而描述程序的执行过程。在绘制程序流程图时使用的符号说明如下:处理 输入输出 判断 起始终止 控制方向图 4.14.3 人机界面设计用户界面是指软件系统和用户交互的接口,良好的用户界面往往可以提高用户使用系统的热情,并刺激他们的积极性。4.3.1 登录界面设计为了保证系统的安全性,进入系统之前必须经过必要的安全性,简洁、清晰、友好是此设计的风格,如图4.2所示:图 4.24.3.2系统基本信息界面设计输入正确的用户名和密码后,即进入系统。系统的基本操作界面如图4.3所示:图4.3系统基本操作界面主要包括修改信息、添加信息、显示信息、统计信息、修改信

14、息几个功能模块。4.3.3 修改界面(员工信息)图 4.44.3.4 添加界面(员工信息)图 4.54.3.5 显示信息(员工信息)图 4.64.3.6 删除信息(员工信息)图4.7第五章 小结ASDFASF:在这次数据库设计中,我遇到的主要问题有以下几个方面:1.Swing局部刷新时的问题,有时新的数据不能在组件上显示2.连接数据库时多个Connection没有关闭导致的取到错误的数据问题3.程序的健壮性,有些错误的情况不能以友好的方式提醒用户总结:在以后的设计中重视前期需求分析,分清模块功能。SADFSA:在本次软件的开发过程中,我进一步深入学习到了软件开发的流程,主要学习到了完整的数据库

15、设计流程。团队中人员的合作精神值得学习,大家集思广益,各司其职,尽自己所能做好各自的工作。我认识到了前期分析的重要性,对后期开发有很大的指导作用,在分析过程中,大家经常会产生分歧,意见的不统一导致了开发时间的延误;此外还体会到了文档的重要性,文档是信息的重要载体,加强了人员间的交流,记录了软件的开发过程,为下一步的开发提供了良好的依据。ASDFAS:这次课程设计我们开发的项目是工资管理系统,主要包括后台数据库的建立和维护以及前台应用程序的开发两个方面。主要功能包括对客户信息的增加、删除、修改等基本功能。此次课程设计过程中也遇到了不少问题,由于自己的知识积累还不够,所以设计的项目也比较简单。通过

16、此次工资管理系统的设计过程,我对这两年的学习进行了全面的回顾与总结,并且得出以下结论:1.系统分析很重要2.严格按照既定的规划进行系统设计与开发3.注重吸收其他软件的优点4.广泛的积累素材5.团队合作很重要ASDASD:在开发这个工资管理系统过程中我深刻地体会到了自学能力的重要性。毕竟在学校学习到的知识是有限的,而在开发系统的过程中仅凭原有的一点点知识是远远不够的,只有翻阅大量的资料才能学到更多的知识,才能实现其预期的功能。在开发过程中,遇到困难是在所难免的,期间我跟我的指导老师和同学进行交流,从中明白了很多。开发一个系统,恒心和毅力也是不可缺少的,如果一遇到难题就心慌,想要放弃,那这样就不可

17、能完成系统。同样,在开发过程当中,细心也是非常重要的,由于很多事项都要很注意才行,如果没有做到这一点,就会出错。在开发过程当中,我学到很多,明白了做任何事情都要有始有终,要敢于同困难作斗争,要养成独立思考的习惯。在以后的工作和生活当中,我将继续发扬这些好的作风。SADFASF:经过反复测试,系统完成后运行添加、修改、查询、报表等功能均正常。此系统任然存在许多缺陷,但是通过该系统设计达到了系统设计目的的意义,基本掌握了软件开发的主要步骤,了解了各个环节在开发时要注意的问题,体会到开发一个系统应该注意的方面以及重视用户在系统开发过程中间的作用,开发出好的软件高质量的软件。另外在设计过程中也逐渐提高

18、了软件开发技能和编程技能以及良好的软件开发思维模式。SDFAS:在学习数据库之前一直觉得数据库没有什么深入研究的价值,觉得无非是将数据存起来进行增删改查的操作就是了。直到真正接触到了数据库这门课才真地发现了这里面得奥妙和值得专研的价值。从某种意义上看来说,对于数据库的学习不仅仅改变了我对与数据库的看法,同时也改变了我对于程序设计的看法。从前简单的看到就做是不科学的,应该经过规划和研究分析才能上手。于此同时,老师留的项目其实是对于我们的所学习知识的一种检验与扩充。因为项目结合很多的其他知识,同时做项目的过程是一个对于知识的重新审视与巩固的过程。总地来说,这次的数据库课程设计让我觉得有所收获,有所

19、得。加强了对于课程本身的理解,同时也知道了更广的知识面。ASDD:近一周以来,虽然课程多、时间紧,考试忙,但在组长的带领下认真进行数据库课程设计。认真听从老师的教导,及时进行学习、交流、实践。通过学习交流,拓宽了知识面,提高了认识。认识的提高主要表现在两方面:一方面是对自我的认识,认识到自身的不足,需要不断提高自己的专业知识、数据管理方面的知识,明白了软件开发是一件工程学,需要工程学的指导,认真实践才是关键;另一方面是对数据库维护的学习认知,通过学习数据库使我上升了一个层次,使我在工作中能更好的完成数据库的维护工作 ,以及软件维护的重要性。面向对象程序设计思想对于软件设计的巨大影响力,对于软件

20、的扩展和维护的带来的巨大便利。 因此此次学习对于我个人来说至关重要。源代码选摘:/数据库连接private Connection getConnection() String url = jdbc:mysql:/127.0.0.1:3306/salary; try Class.forName(com.mysql.jdbc.Driver); return (Connection) DriverManager.getConnection(url, root, mysql catch (ClassNotFoundException e) e.printStackTrace(); catch (SQL

21、Exception e) return null; public static void main(String args) new adminUser();/ 添加职工信息监听if (e.getSource() = enterInsert8) try con = getConnection(); con.setAutoCommit(false); sql = con.createStatement(); int k = sql.executeUpdate(INSERT INTO employees VALUES( + a800 + , + a801 + + a802 + + a803 + + a804 + + a805 + + a806 + + a807 + a808 + ) System.out.println(k = + k); int m = sql .executeUpdate(INSERT INTO EmpandSal(emp_salEmpNO,emp_salTimeLev,emp_salTechLev) VALUES( + a800 + , + a808 + a8010 int n = sql.executeUpdate(INSERT INTO DepAndEmp VALUES(

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1