数据库原理课程设计说明书(薪资管理系统)(共25页).doc

上传人:飞****2 文档编号:13582268 上传时间:2022-04-30 格式:DOC 页数:25 大小:661.50KB
返回 下载 相关 举报
数据库原理课程设计说明书(薪资管理系统)(共25页).doc_第1页
第1页 / 共25页
数据库原理课程设计说明书(薪资管理系统)(共25页).doc_第2页
第2页 / 共25页
点击查看更多>>
资源描述

《数据库原理课程设计说明书(薪资管理系统)(共25页).doc》由会员分享,可在线阅读,更多相关《数据库原理课程设计说明书(薪资管理系统)(共25页).doc(25页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、精选优质文档-倾情为你奉上四 川 理 工 学 院 课 程 设 计 书学院 计算机学院 专业 计算机科学与技术 班级 计科09级7班 题目 薪资管理系统 教师 何绍荣 学生 莫华东、邓修丽、曾秀容 目录一、 开发背景和开发环境1.1 开发背景:企业的工资管理是公司管理的一个重要内容,随着企业人员数量增加,企业的工资管理工作也变得越来越复杂。工资管理既设计到企业劳动认识的管理,同时也是企业财务管理的重要组成部分,工资管理需要和人事管理相联系,同时连接工时考核和医疗保险等等,来生产那个企业每个职工的基本工资、津贴、医疗保险、保险费、实际发放工资等。资金是企业生存的主要元素,资金的流动影响到企业的整体

2、运作,企业员工的工资是企业资金管理的一个重要的组成部分。早期的工资统计和发放都是使用人工方式处理纸质材料,不仅花费财务人员大量的时间且不易保存,往往由于个人的因素抄写不慎活计算疏漏,出现工资发放错误的现象。早期工资管理多采取纸质材料和具有较强的时间限制。基于以上原因,企业工资管理系统使用电脑安全保存、快速计算、全面统计,实现工资管理的系统化、规范化、自动化。企业工资管理系统极大的提高了工作效率,节省了人力和财力,最终满足企业财务管理、员工工资发放的需要,同时也成为现代化企业管理的标志。1.2 开发环境:1. 操作系统:windows xp2. 数据库:sql server 20003. 开发语

3、言:java4. 开发工具:eclipse1.3 组内成员:莫华东、邓修丽、曾秀容1.4 任务分配情况:莫华东负责:需求分析、编码邓修丽负责:概念结构设计、数据库实施曾秀容负责:逻辑结构设计、数据库实施东况4 psever 2000e Snum=; staff.Snum=salary.Snum;二、 需求分析2.1员工薪资管理系统的题目分析:n 公司的员工各自职业不同,领取的工资也不相同,员工分为管理人员、账务人员、技术人员、销售人员n 下设几个部门,各部门人员领取的工资也不相同,有经理部、财务部、技术部、销售部n 工资由基本工资、福利补贴和奖励工资构成,失业保险和住房公积金在工资中扣除n 每

4、个员工的基本资料有姓名、性别、年龄、部门、职业(如经理、主任、科长、工程师、办事员和工人等)n 每月个人的最高工资不超过3000元。工资每月按部门发放,实际发放的工资金额为工资总额减去失业保险金和住房公积金。如果违反劳动纪律,每次扣除基本工资的10%,若扣除金额每月累计超过基本工资,下月工资停发2.2 信息要求:n 用户需要从数据库中查询基本信息其中包括员工号,姓名,性别,年龄,确定自己的基本信息是否正确n 用户需要从数据库中查询工资情况其中包括基本资,福利补贴,奖励工资,失业保险,住房工积金,知道自己每个月应得工资n 用户需要从数据库中查询部门其中包括部门号,部门名称,确定是否正确n 用户需

5、要从数据库中查询职业其中包括职业号,职业名称,确定是否正确2.3 处理要求:n 员工信息的输入,包括员工的:员工号、部门号、职业号、姓名、性别、年龄n 员工信息的查询,包括员工的:员工号、姓名、性别、年龄、职业、应得工资和实发工资n 员工信息的修改,包括员工的:员工号、姓名、性别、年龄、职业n 新增员工信息的插入,包括员工的:员工号、部门号、职业号、姓名、性别、年龄n 离职员工信息的删除,包括员工的:员工号、部门号、职业号、姓名、性别、年龄n 记录已经领取和未领取工资的员工的信息,包括员工的:员工号、部门号、职业号、姓名、性别、年龄、职业名、应得工资、实发工资n 处理违反纪律而扣工资的员工的信

6、息,员工信息的输入,包括员工的:员工号、部门号、职业号、姓名、性别、年龄、职业、应得工资和实发工资n 处理因表现良好而加工资的员工的信息,员工信息的输入,包括员工的:员工号、姓名、性别、年龄、职业、应得工资和实发工资2.4 安全性要求:本系统的管理员是会计部的操作人员,一般的职工只有登陆查看自己信息的权利,但是不管是管理员,还是一般工作人员,都要用自己的登录名和密码才能进行操作,这样保证了该系统得安全性。2.5 完整要求:在在该系统中,数据的完整性也是非常重要的,只有保持勒完整性,才能充分发挥该系统的作用。本系统是通过采用事物来实现完整性控制的。2.6 数据流图:2.7 数据字典:数据项:员工

7、号含义说明:唯一的标识每个员工类型:字符型长度:6取值范围:-取值含义:1-2位标识部门号3-4位标识职业号,5-6位标识员工号数据项:姓名含义说明:标识每个员工的姓名类型:字符型长度:8取值含义:顺序标识每一个员工的姓名 数据项:性别含义说明:唯一的标识每一个员工的性别类型;逻辑型长度:1取值范围:0或者1取值含义:唯一的标识每一个员工的性别数据项:年龄含义说明:标识每一个员工的年龄类型:整型长度:2取值范围:18-100取值含义:顺序的标识每一个员工的年龄“员工”是该系统中的一个核心数据结构,它可以描述如下:数据结构:员工含义说明:是员工薪资管理系统中的主体数据结构,定义了一个员工的有关信

8、息组成:员工号,姓名,性别,年龄数据项:基本工资含义说明:标识每一个员工的基本工资类型:浮点型长度:7取值范围:0000.00-3000.00取值含义:顺序的标识每一个员工的基本工资数据项:福利补贴含义说明:标识每一个员工的福利补贴类型:浮点型长度:7取值范围:0000.00-3000.00取值含义:顺序的标识每一个员工的福利补贴数据项:奖励工资含义说明:标识每一个员工的奖励工资类型:浮点型长度:7取值范围:0000.00-3000.00取值含义:顺序的标识每一个员工的奖励工资数据项:失业保险含义说明:标识每一个员工的失业保险类型:浮点型长度:7取值范围:0000.00-3000.00取值含义

9、:顺序的标识每一个员工的失业保险数据项:住房工积金含义说明:标识每一个员工的住房工积金类型:浮点型长度:7取值范围:0000.00-3000.00取值含义:顺序的标识每一个员工的住房工积金数据项:应得工资含义说明:标识每一个员工的应得工资类型:浮点型长度:7取值范围:0000.00-3000.00取值含义:顺序的标识每一个员工的应得工资数据项:实得工资含义说明:标识每一个员工的实得工资类型:浮点型长度:7取值范围:0000.00-3000.00取值含义:顺序的标识每一个员工的实得工资“工资”是该统中的一个核心数据结构,它可以描述如下:数据结构:工资含义说明:是员工薪资管理系统中的核心数据结构,

10、定义了一个员工的有关工资组成:基本工资、福利补贴、奖励工资、失业保险、住房工积金数据项:职业号含义说明:唯一的每一个员工的职业号类型:字符型长度:3取值范围:000-999取值含义:顺序的唯一标识每一个员工的职业号数据项:职业名含义说明:唯一的每一个员工的职业名类型:字符型长度:12取值范围:000-999取值含义:顺序的唯一标识每一个员工的职业名数据结构:职业含义说明:定义了一个员工的职业组成:职业号、职业名数据项:部门号含义说明:唯一的每一个员工的部门号类型:字符型长度:2取值范围:00-11取值含义:顺序的唯一标识每一个员工的部门数据项:部门名含义说明:唯一的每一个员工的部门名类型:字符

11、型长度:10取值范围:-取值含义:顺序的唯一标识每一个员工的部门名数据结构:部门含义说明:定义了一个员工的所属部门组成:部门号、部门名三、概念结构设计3.1 E-R图设计员工实体E-R图:工资实体E-R图:部门实体E-R图: 职业实体E-R图:总的E-R图:四、逻辑结构设计4.1 E-R图转关系模型:员工(员工号、部门号、职业号、姓名、姓别、年龄)工资(员工号、基本工资、福利补贴、奖励工资、失业保险、住房工积金、应得工资、实发工资)职业(职业号、职业名)部门(部门号、部门名)4.2 基本表的实现:员工表(staff):属性名数据类型 字段长度是否为空是否为主/外键员工号(Snum)char11

12、NOT NULL主键部门号(Dnum)Char2NULL外键职业号(Pnum)Char7NULL外键姓名(Sname)Char8NULL性别(Ssex)Char2NULL年龄(Sage)Char2NULL工资表(salary):属性名类型长度是否允许为空是否为主/外键员工号(Snum)char11NOT NULL外键基本工资(Bsalary)float7NULL福利补贴(Wsubsidy)float7NULL奖励工资(Asalary)float7NULL失业保险(Lsafe)float7NULL住房工积金(Hsalary)float7NULL应得工资(Dsalary)float7NULL实发工

13、资(Ssalary)float7NULL职业表(profession):属性名数据类型长度是否为空是否为主/外键职业号(Pnum)Char7NULL主键职业名(Pname)Char 2NULL部门表(department):属性名数据类型长度是否为空是否为主/外键部门号(Dnum)Char2NULL主键部门名(Dname)Char 10NULL五、物理结构设计六、数据库实施6.1建表:1.staff表create table staff(Snum char(11) unique not null, Dnumchar(2), Pnum char(7), Sname char(8) , Ssex

14、char(2), Sage char(2);2.salary表create table salary(Snum char(11) unique not null, Bsalary float(7), Wsubsidy float(7), Asalary float(7), Lsafe float(7), Hsalary float(7), Dsalary float(7), Ssalary float(7);3.Profession表create table profession(Pnum char(7) unique not null,Pname char(2);4.Department表c

15、reate table department(Dnum char(2) unique not null, Dname char(10);6.2执行sql语句6.2.1实现按照科室录入个人的基本资料、工资和扣除金额的数据:6.2.2计算个人的实际发放工资:select staff.Snum 员工号, Sname 员工名, Bsalary+Wsubidy+Asalary-Lsafe-HSalary 实发工资 from staff, Salary where staff.Snum=salary.Snum;6.2.3按科室、职业分类统计人数和工资金额:按照科室:select count(*) as 人

16、数, sum(Bsalary+Wsubsity+Asalary-Lsafe-Hsalary) as 工资 from staff, salary where staff.Snum=salary.Snum group by Dnum;按照职业:select count(*) as 人数, sum(Bsalary+Wsubsity+Asalary-Lsafe-Hsalary) as 工资 from staff, salary where staff.Pnum=salary.Pnum group by Pnum;6.2.4实现分类查询:6.2.5能够删除辞职人员的数据:delete from staf

17、f where Snum=;delete from salary where Snum=;6.3 编码:1.登录对话框:代码:public void createDialog () dialog = new JDialog (Salary.this, 用户登录框, true);/创建对话框 /Font fn = new Font (宋体, 1, 13);dialog.setSize (new Dimension (300, 200);/设置对话的大小dialog.setLayout (new GridLayout (4, 1);/设置对话框的布局dialog.setLocation (400,

18、 260);JLabel jlab1 = new JLabel (请登录);JLabel jlab2 = new JLabel (用户名:);JLabel jlab3 = new JLabel (密 码:);JTextField jte1 = new JTextField (, 15);JPasswordField jte2 = new JPasswordField (, 15);JButton jbut1 = new JButton (确定);jbut1.setFont (fn);jbut1.setFocusPainted(false);JButton jbut2 = new JButton

19、 (取消);jbut2.setFont (fn);jbut2.setFocusPainted(false);JPanel jpan1 = new JPanel ();JPanel jpan2 = new JPanel (new FlowLayout (FlowLayout.LEFT);JPanel jpan3 = new JPanel (new FlowLayout (FlowLayout.LEFT);JPanel jpan4 = new JPanel ();jlab1.setFont (fn);jlab2.setFont (fn);jlab3.setFont (fn);jte1.setFon

20、t (fn);jte2.setFont (fn);jte2.setEchoChar (*);jpan1.add (jlab1);jpan2.add (jlab2);jpan2.add (jte1);jpan3.add (jlab3);jpan3.add (jte2);jpan4.add (jbut1);jpan4.add (jbut2);/监听按钮事件jbut1.addActionListener (new ActionListener ()public void actionPerformed (ActionEvent e)dialog.dispose (););jbut2.addActio

21、nListener (new ActionListener ()public void actionPerformed (ActionEvent e)System.exit (0););/监听对话框事件addWindowListener (new WindowAdapter ()public void windowClosing (WindowEvent e)System.exit (0););dialog.add (jpan1);dialog.add (jpan2);dialog.add (jpan3);dialog.add (jpan4);dialog.setResizable(false

22、);dialog.setVisible (true);2. 主窗口:代码:public static final int FRAME_WIDTH = 500;/定义窗口的宽度public static final int FRAME_HEIGHT = 350;/定义窗口的高度private Font fn = new Font (宋体, 1, 13);private JDialog dialog;ImageIcon img;String filename;public Salary (String title, String filename)super (title);this.filena

23、me = filename;public void launchFrame ()this.createDialog ();this.createMenu ();this.setSize (FRAME_WIDTH, FRAME_HEIGHT);/设置窗口的宽度和高度this.setLocation (400, 260);/设置窗口的位置this.setResizable (false);/设置窗口不允许改变大小this.setLayout (null);/取消窗口的内在布局this.setVisible (true);img = new ImageIcon(filename);/这是背景图片 J

24、Label imgLabel = new JLabel(img);/将背景图放在标签里。 this.getLayeredPane().add(imgLabel,new Integer(Integer.MIN_VALUE);/注意这里是关键,将背景标签添加到窗口的LayeredPane面板里imgLabel.setBounds(0,0,img.getIconWidth(), img.getIconHeight();/设置背景标签的位置 Container cp = this.getContentPane(); cp.setLayout (new BorderLayout(); (JPanel)c

25、p).setOpaque (false); /注意这里,将内容面板设为透明。这样LayeredPane面板中的背景才能显示出来。 /窗口关闭事件this.addWindowListener (new WindowAdapter ()public void windowClosing (WindowEvent e)System.exit (0););添加员工:代码:略删除员工:代码:略其它:略七、总结本次数据库系统设计我选的是员工薪资管理系统,是我第一次设计数据库的系统,这对我来说是一个很严峻的考验,同时也激发了我的热情,使我能够完全投入到本次系统的设计中来。因为这不仅要求我能熟练掌握数据库的理

26、论知识和实践知识,还对我的软件设计能力有较高得要求。 本系统实现的功能有查询、插入、修改、删除等,这就要求我能够熟练掌握和使用数据库的操作和使用,另外,数据得完整性和安全性也是本次设计得一个重点和难点,如果不能做好,那么这个系统也就相应的失去它的优势。 在本次设计过程中,我也遇到了一些问题,毕竟我是首次设计这种系统,经验不足,还有很多设计的方法和技巧没有掌握,但是我通过查询资料和请教别人,终于把遇到得问题解决了。本次设计使我获益匪浅,不仅使我对数据库的知识更加熟练,掌握得更加牢固,为今后的进一步学习打下了坚实的基础,还让我学会了更多的设计方法和技巧,使我的设计能力有了进一步提高。专心-专注-专业

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

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com