超市员工薪资管理系统数据库课程设计

合集下载

工资管理系统数据库课程设计

工资管理系统数据库课程设计

课程设计报告书年月1设计时间2设计目的掌握数据库的设计3设计任务设计一个薪资管理系统4设计内容(1〕目标:1)实现月薪资计算;2)实现与薪资管理相关的档案管理。

3)提升薪资管理工作效率,降低犯错率。

(2〕功能要求:档案管理1)保留相关薪资计算以及薪资管理所一定的数据2)能对数据进行查问、统计薪资计算1)正确计算出个人月薪资、部门月薪资以及全厂月薪资。

2)能对病假扣款系数进行修正。

3)能统计薪资计算表、个人薪资单、部门薪资单、薪资汇总表四种表格。

4.1 需求剖析薪资管理信息系统对公司增强薪资管理有着极其重要的作用,就一般的大型公司来说,它的设计内容特别复杂并且众多,比方拥有薪资计算功能,薪资统计功能,报表输出功能,并且设计的模块也好多,比方薪资管理模块,薪资统计模块,报表设计模块,打印输出模块,模糊查问模块等等。

因为设计时间本设计事一个简单模型,该公司当前对薪资管理的要求其实不高。

所以,针对该公司而言,我们经过了频频地论证,最后确立了薪资管理系统的设计方案。

该薪资管理系统的主要功能以下列图:薪资管理系统员工根本信息薪资构造设置薪资汇总资员员基岗工岗工料工工础位龄位龄输增查工工工工工入删询资资资资资图 4-14.2 系统设计4.2.1 观点构造设计姓名性别员工号文化程度民族技术职称员工籍贯技术等级工种类型现地址人员类型所属部门出诞辰期参加工作日期图 4-2岗位津贴薪资表物价补贴职务津贴住宅补助图 4-3员工出勤日数工伤日数出勤表产假日数病假日数旷工日数事假日数图 4-4加班费少勤扣除薪资房租病假系数晚班日数加班日数员工号姓名性别民族员工号姓名技术等级职工员工代号影响影响工伤日数薪资表出勤表加班费物价补助岗位津贴产假日数加班日数技术等级物价补助住宅补助病假日数事假日数旷工日数图4-5 总ER图4.2.2 逻辑构造设计员工表〔员工号技术等级姓名性别出诞辰期参加工作日期所属部门人员类型工种职别技术职称文化程度民族籍贯现地址〕薪资表〔技术等级员工的根本薪资岗位津贴物价补助职位津贴住宅补助房租〕出勤表〔员工号员工出勤工伤日数产假日期病假日期旷工日期事假日期加班日期晚班日期病假日期〕4.2.3 物理构造设计员工表 4-1字段名称种类能否为空主重点字取值范围备注员工号char否Y主键姓名char否N性别char否N出诞辰期datetime否N参加工作datetime否N日期所属部门char否N人员类型char否N工种职别char否N技术等级char否N技术职称char否N文化程度char否N民族char否N籍贯char否N现地址char否N薪资表 4-2字段名称种类能否为空主键字取值范围备注技术等级char否Y主键岗位津贴int否N物价补助int否N职务津贴int否N住宅补助int否N房租int否N少勤扣除int否N薪资加班费int否N出勤表 4-3字段名称种类能否为空主键字取值范围备注员工号char否Y主键员工的出int否N勤日数工伤日数int否N产假日数int否N病假日数int否N旷工日数int否N事假日数int否N加班日数int否N晚班日数int否N病假系数int否N4.3 系统实行4.3.1 数据库实现create table ZG(员工号char(10) primary key,姓名 char(10) not null,性别 char(10) not null,出诞辰期datetime not null,参加工作日期datetime not null ,所属部门char (20) not null,人员类型char(10) not null,工种职别char (10) not null,技术等级char (10) not null,技术职称char (10) not null,文化程度char (10) not null,民族 char (10) not null,籍贯 char (10) not null,现地址 char (10) ) not null;create table GZ(技术等级 char(10) primary key not null, 员工的根本薪资 int not null , 岗位津贴 int not null ,物价补助int not null ,职务津贴int not null,住宅补助int not null,房租 int not null );create table CQ(员工号char(10) primary key,员工的出勤日数int ,公伤日数int not null,产假日数int not null ,病假日数int not null,旷工日数int not null,事假日数int not null,加班日数int not null ,晚班日数int not null ,病假系数int not null);4.3.2 数据载入员工表的数据图 4-6薪资表的数据图 4-7出勤表的数据图 4-84.4 运转与测试4.4.1 运转与测试设计系统查问功能及要求,写出主要的查问SQL 语句,并给出运转结果。

员工薪资管理系统课程设计

员工薪资管理系统课程设计

员工薪资管理系统课程设计本次课程设计旨在设计一个员工薪资管理系统,具体包括以下几个方面:一、系统需求分析1.1 系统目标:设计一个员工薪资管理系统,方便企业对员工的薪资管理和考核。

1.2 系统功能:(1)员工信息管理:包括员工基本信息、工作经历、教育背景等;(2)工资管理:根据员工月末工作情况和考核结果自动计算工资,提供可显示、可打印的工资条;(3)绩效管理:对员工综合表现进行绩效考核,自动生成考核结果;(4)统计报表:对员工工资、绩效等数据进行统计和分析,生成对应报表;(5)权限管理:管理员、普通员工、财务等角色对系统操作权限的管控。

1.3 系统特点:(1)系统易用性:可视化的操作界面,简洁明了的指引,减少员工学习成本和使用难度。

(2)系统安全性:保护系统数据安全,规范操作行为,确保信息安全性和完整性。

(3)系统性能:具有高效性、可扩展性、可维护性等特点,满足企业不同规模和需求的管理要求。

二、系统架构设计2.1 系统基础架构:采用B/S(Browser/Server)架构,使用Web浏览器作为客户端,Web服务器作为服务端,将全部应用逻辑封装在服务器端。

2.2 技术选择:(1)前端:HTML、CSS、JavaScript、jQuery、Bootstrap、D3.js;(2)后端:Java、Spring MVC、MyBatis、MySQL。

2.3 架构说明:(1)前端页面采用了Bootstrap和D3.js框架,实现了页面美观、交互性和可视化性。

(2)后端采用了Spring MVC框架和MyBatis框架,实现了MVC架构、ORM框架和事务管理,并与MySQL数据库进行交互。

(3)操作系统采用Linux,Web容器采用Tomcat,编程工具采用Eclipse及其插件,版本管理工具采用Git。

三、系统模块设计3.1 用户管理模块该模块实现用户信息的管理、用户登录和权限管理功能。

包括管理员和普通员工两种角色,设定不同权限,能够对员工信息和工资进行相关操作。

数据库课程设计--职工工资管理

数据库课程设计--职工工资管理

数据库原理课程设计报告题目:职工工资管理成绩:1设计题目职工工资管理2 系统概述企业的工资管理是公司管理的一个重要内容,随着企业人员数量增加,企业的工资管理工作也变得越来越复杂。

工资管理既设计到企业劳动认识的管理,同时也是企业财务管理的重要组成部分,工资管理需要和人事管理相联系,同时连接工时考核和医疗保险等等,来生产那个企业每个职工的基本工资、津贴、医疗保险、保险费、实际发放工资。

3系统功能模块设计(1)员工信息和履历模块员工基本信息模块具有员工信息输入、员工增删和员工信息查询三个功能。

员工基本信息包括员工号、员工姓名、员工性别、所在部门、所在职务、和工资等级等信息。

员工增删实现了对数据库中员工信息的增加和删除。

员工信息查询可以通过员工号或员工姓名对员工信息进行查询。

(2)工资结构设置模块根据该公司的工资管理实际情况,本系统将工资结构分为基础工资、岗位工资和工龄工资三部分。

该模块可以对这三个工资类型设置工资等级,并对每个等级设置工资标准。

(3)工资汇总模块用在员工信息管理模块对该员工的工资等级进行输入以后,在工资汇含义说明:标识每一个员工的年龄类型:整型长度:2取值范围:18-100取值含义:顺序的标识每一个员工的年龄员工是该系统中的一个核心数据结构,它可以描述如下:数据结构:员工含义说明:是员工薪资管理系统中的主体数据结构,定义了一个员工的有关信息组成:员工号,姓名,性别,年龄数据项:基本工资含义说明:标识每一个员工的基本工资类型:浮点型长度:7取值范围:0000.00-3000.00取值含义:顺序的标识每一个员工的基本工资数据项:福利补贴含义说明:标识每一个员工的福利补贴类型:浮点型长度:7取值范围:0000.00-3000.00取值含义:顺序的标识每一个员工的福利补贴数据项:奖励工资含义说明:标识每一个员工的奖励工资类型:浮点型长度:7取值范围:0000.00-3000.00取值含义:顺序的标识每一个员工的奖励工资数据项:失业保险含义说明:标识每一个员工的失业保险类型:浮点型长度:7取值范围:0000.00-3000.00取值含义:顺序的标识每一个员工的失业保险数据项:应得工资含义说明:标识每一个员工的应得工资类型:浮点型长度:7取值范围:0000.00-3000.00取值含义:顺序的标识每一个员工的应得工资数据项:实得工资含义说明:标识每一个员工的实得工资类型:浮点型长度:7取值范围:0000.00-3000.00取值含义:顺序的标识每一个员工的实得工资7程序运行环境和开发环境操作系统:windows 7后台数据库:SQL Server 2008开发工具:JA V A等由于java编程与win7系统的SQL Server 2008比较兼容,所以我用的win7系统,这更便于我们编程与调试8数据库的实施与运行通过员工信息登入工资管理系统界面,如图:图8-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, 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 ("取消");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.setFont (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.addActionListener (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);dialog.setVisible (true);}工资管理系统界面,整个系统的核心程序,如图:图8-2具体代码如下:public static final int FRAME_WIDTH = 500public 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.filename = 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);JLabel imgLabel = new JLabel(img);。

员工工资管理系统数据库设计

员工工资管理系统数据库设计

《数据库原理》实验七:数据库设计数据库名称:员工薪资管理系统姓名:胡少帅班级: 2011 级网络工程学号:1需求剖析薪资管理系统是供给薪资管理人员和员工薪资进行管理的系统。

它能自动对不一样职务,不一样出勤及各个月份的薪资进行管理并生成财务表。

薪资管理系统的用户需求主要功能有:1各部门的信息状况2各员工的信息状况3考勤信息状况4薪资信息状况5定义登岸用户和用户的权限2观点剖析(1)部门 E-R 图(2)员工信息 E-R 图(3)职务信息 E-R 图(4)考勤信息 E-R 图(5)用户 E-R 图(6)薪资状况 E-R 图(7)总 E-R图3逻辑设计关系模型:部门(部门编号(主键),部门名称,经理,电话)员工信息(员工编号(主键),职务编号,姓名,性别,电话,住址,部门编号(外键))考勤状况(员工编号(主键),出勤天数,加班天数,出勤奖金,月份)职务(职务编号(主键),职务名称(主键),基本薪资)薪资计算(员工编号(主键),考勤状况,薪资,月份)用户(用户名,密码,权限)4物理设计1给员工信息表成立非齐集索引“员工”/* 给员工信息表非成立齐集索引*/create nonclustered index 员工 on 员工信息( 员工编号) goSELECT *FROMsys.indexesWHEREname=' 员工 '2给薪资表成立独一索引“薪资”/* 给薪资表成立独一索引“薪资”*/create unique index薪资on薪资状况(员工编号)goSELECT *FROMsys.indexesWHEREname=' 薪资 'Go3给考勤信息表成立齐集索引“考勤”/* 给考勤信息表成立非齐集索引*/create nonclustered index 考勤 on 考勤信息( 员工编号) goSELECT *FROMsys.indexesWHEREname=' 考勤 '5实行过程(1)创立表构造1 员工信息表create table员工信息( 员工编号char(20) not null, 职务编号char(20) not null, 姓名 varchar(20) not null,性别 char(20) not null,电话 char(20) not null,地址 varchar(20) not null,部门编号char ( 20) not null)2职务信息表create table职务信息( 职务编号char(20) not null, 职务名称char(20) not null, 基本薪资money)3薪资表create table薪资状况( 月份 char(20) not null,员工编号char(20) not null,薪资 char(20) not null)4考勤信息表create table考勤信息( 员工编号 varchar(40) not null, 出勤天数 char(20) not null,加班天数 char(20) not null,出勤奖金 money)5部门表create table部门( 部门编号char(20) not null, 部门名称char(20) not null, 经理 varchar(20) not null,电话 char(20) not null)6用户表create table用户( 用户名 char(10) not null,密码 char(30) not null,权限 char(30))(2)给表定义拘束1 给考勤状况中的出勤奖金列定义拘束范围0-10002给部门表增添一个主键3给员工信息表增添一个主键和外键(3)给表插入信息1员工信息表插入2职务信息表插入3用户信息表插入4薪资状况表插入5部门表插入6考勤状况表插入(4)表的基本操作1 改正员工信息中编号为10001 的姓名为张琪2给职务信息表增添一列3删除方才增添的那列4改正薪资状况表中薪资的数据种类5给考勤信息表增添一列(5)定义登录名,用户和权限1定义第一个登录名和用户,权限对全部的表有全部的权限/* 创立用户和给予权限*/create login王琦with password='123456',default_database=员工薪资管理;/* 创立登录账户*/gocreate user王琦for login王琦gogrant allon 部门to王琦grant allon 薪资状况to王琦grant allon 考勤信息to王琦grant allon 用户to王琦grant allon 员工信息to王琦grant allon 职务信息to王琦2创立第二个登录名和用户,对全部的表只有查察和删除的权限create login高汉with password='123456',default_database=员工薪资管理;/* 创立登录账户*/gocreate user高汉for login高汉gogrant select,deleteon 部门to高汉grant select,deleteon 薪资状况to高汉grant select,deleteon 考勤信息to高汉grant select,deleteon 用户to高汉grant select,deleteon 员工信息to高汉grant select,deleteon 职务信息to高汉3创立第三个登录名和用户,只有查察的权限/* 创立第三个用户并给予全部权限*/create login王敏with password='123456',default_database=员工薪资管理;/*创立登录账户*/gocreate user for login王敏王敏gogrant selecton 部门to王敏grant selecton 薪资状况to王敏grant selecton 考勤信息to王敏grant selecton 用户to王敏grant selecton 员工信息to王敏grant selecton 职务信息to王敏(6)成立一个触发器,在薪资状况表被改正时使用/* 成立一个触发器*/create trigger mon 薪资状况for updateasif update(薪资)beginrollback tranprint' 基本薪资不可以改正,请联系财务部'end(6)成立储存过程1创立一个储存过程来寄存查问到的员工的信息和薪资2创立一个储存过程来寄存进行删除操作3 创立一个储存过程来寄存查问全部员工中薪资大于3500 的(7)成立一个视图6课程设计总结本次课程设计检查从职员的薪资,部门的状况,依据其详细状况,设计薪资管理系统。

数据库课程设计设职工工资管理系统

数据库课程设计设职工工资管理系统

表课程设计任务书页脚内容摘要企业的工资管理是公司管理的一个重要内容。

随着企业人员数量增加,企业的工资管理工作也变得越来越复杂。

工资管理既涉及到企业劳动人事的管理,同时也是企业财务管理的重要组成部分。

工资管理需要和人事管理相联系,同时连接工时考勤和医疗保险等等,来生成企业每个职工的基本工资、津贴、医疗保险、保险费、实际发放工资等。

资金是企业生存的主要元素,资金的流动影响到企业的整体运作,企业员工的工资是企业资金管理的一个重要的组成部分。

早期的工资统计和发放都是使用人工方式处理纸质材料,不仅花费财务人员大量的时间且不易保存,往往由于个人的因素抄写不慎或计算疏忽,出现工资发放错误的现象。

早期工资管理多采取纸质材料和具有较强的时间限制。

基于以上原因,企业工资管理系统使用电脑安全保存、快速计算、全面统计,实现工资管理的系统化、规范化、自动化。

关键词关键词1:职工关键词2:工资关键词3:职工工资页脚内容ii目录1 系统功能概述 01.1 系统功能分析 01.2 系统物理模块设计 02 数据库设计 (1)2.1 需求分析 (1)2.2 表结构设计 (1)3 系统各功能模块的详细设计 (2)3.1 表的设计 (2)1.职工信息表 (2)2.职工工资表 (4) (4)3.系统信息表 (4)页脚内容iii (5)4.岗位信息表 (5) (6)3.2 各窗体设计 (6)3.2.1启动封面窗体及登录对话框的设计 (6)页脚内容iv (8)3.2.2主窗体 (9)要求:设计为MDI窗体,含有主菜单:[文件]、[数据管理]、[数据查询]。

(9)3.2.3注册新用户窗体 (12)3.2.4分别设计各个信息窗体 (15)5.2.5各种信息的查询窗体 (18)页脚内容v1 系统功能概述1.1 系统功能分析工资管理系统系是为了更好地实现工资各种信息的管理以及各种信息的安全性管理。

本系统主要对查看员工的各种工资信息需求所设计的,可以很好的管理数据。

工资管理系统数据库课程设计源码

工资管理系统数据库课程设计源码

一、课程设计主题介绍本次课程设计的主题为工资管理系统数据库,旨在通过设计一个完善的工资管理系统数据库,实现对公司员工工资信息的管理和查询功能。

工资管理系统是企业日常管理中不可或缺的一部分,良好的工资管理系统能够有效提高企业的管理效率和员工的工作积极性,具有重要的实际意义。

二、系统需求分析1. 用户需求:系统应具有权限管理、员工信息管理、薪资发放管理等功能,不同用户拥有不同的操作权限。

2. 数据需求:系统需要存储员工基本信息、薪资信息、考勤信息等数据。

3. 界面需求:系统应具有友好的操作界面,用户操作简单方便。

4. 安全需求:系统要保证数据的安全性,防止未授权人员获取敏感信息。

三、系统设计思路1. 数据库设计:设计员工表、薪资表、权限表等数据库表结构,确保数据存储的规范性和完整性。

2. 功能设计:设计权限管理模块、员工信息管理模块、薪资发放管理模块等系统功能。

3. 界面设计:设计简洁清晰的操作界面,使用户能够轻松上手。

4. 安全设计:采用加密算法保护用户信息,设置严格的权限控制,防止数据泄露和篡改。

四、系统技术选型本系统选用MySQL数据库存储数据,采用Python语言进行后台逻辑开发,使用Django框架进行Web应用开发,前端界面采用HTML、CSS和JavaScript技术实现。

五、系统功能实现1. 权限管理:管理员用户可以设置不同用户的权限,包括查看员工信息、修改薪资、导出报表等操作。

2. 员工信息管理:实现员工信息的增加、修改、删除、查询等功能,包括基本信息、通联方式、部门信息等。

3. 薪资发放管理:实现对员工薪资的发放、调整、查询等功能,包括工资条生成、导出等。

4. 数据统计报表:系统可以生成各类工资统计报表,包括月度工资报表、年度工资报表等。

六、系统调试和测试在系统开发完成后,对系统进行全面的功能测试和性能测试,确保系统稳定可靠、业务流程正常、响应速度合理等。

七、系统部署和运行系统部署到服务器上,对外提供访问服务,确保系统在日常运行中稳定运行。

数据库课程设计——企业员工工资管理系统

数据库课程设计——企业员工工资管理系统

数据库课程设计——企业员工工资管理系统一、引言在现代企业管理中,员工工资的管理是一个极为重要的环节。

为了提高工资管理的效率和准确性,需要设计和实现一套高效的企业员工工资管理系统。

本文将介绍如何在数据库课程设计中构建一个功能完善的企业员工工资管理系统。

二、系统需求分析企业员工工资管理系统需要满足以下基本需求:1. 员工信息管理:包括员工基本信息(姓名、性别、年龄等)、部门信息、职位信息等。

2. 工资计算:根据员工的基本工资、绩效考核等因素计算工资。

3. 工资发放:自动生成工资发放单,记录工资发放的时间和方式。

4. 工资查询:员工和管理人员能够查询工资详细信息,包括工资单、工资发放记录等。

5. 统计报表:生成各种工资统计报表,如部门工资总额、员工工资排名等。

三、系统设计与实现1. 数据库设计为了满足系统需求,需要设计一组适当的数据库表来存储相关数据。

以下是数据库表的设计方案:- 员工表(Employee):存储员工的基本信息(员工编号、姓名、性别、年龄等)。

- 部门表(Department):存储部门的信息(部门编号、部门名称等)。

- 职位表(Position):存储职位信息(职位编号、职位名称等)。

- 工资表(Salary):存储员工的工资信息(员工编号、基本工资、绩效等)。

- 工资发放表(SalaryPayment):记录工资的发放信息(员工编号、发放时间、发放方式等)。

2. 系统实现利用SQL语言和数据库管理系统,可以实现员工工资管理系统的各项功能需求。

以下是关键功能的实现示例:- 员工信息管理:通过SQL语句实现员工信息的增加、删除、修改和查询操作。

- 工资计算:编写SQL函数或存储过程来计算员工的工资,考虑到绩效考核等因素。

- 工资发放:编写SQL语句插入工资发放记录,记录发放时间和方式等信息。

- 工资查询:编写SQL语句实现员工和管理人员的工资查询功能,根据需要生成工资单。

- 统计报表:通过SQL语句生成工资统计报表,利用聚合函数和分组操作实现部门工资总额、员工工资排名等统计指标的计算。

员工工资管理系统数据库设计

员工工资管理系统数据库设计

员工工资管理系统数据库设计一、需求分析为了更好的管理公司的员工工资,需要设计一套员工工资管理系统数据库,并且要具备以下功能:1. 员工工资核算:系统需要对员工的工资进行核算,并且能够根据不同的工资核算规则自动计算出员工的工资,并可以进行手动调整。

2. 工资发放:该系统需要支持工资的自动发放,如每月固定发放日期自动发放员工工资等。

3. 工资查询:该系统需要支持员工查询自己工资、管理员查询所有员工的工资等。

4. 工资统计:该系统需要支持对员工工资进行统计,如统计某个月份公司工资总和,平均工资,最高与最低工资,员工分布情况等。

5. 员工信息管理:该系统需要支持员工信息管理,如员工基本信息、部门信息、职位信息等。

6. 系统设置:该系统需要支持系统设置,可以对员工工资核算规则等设置进行修改。

二、数据库设计1. 数据库结构设计该数据库分为员工信息表、工资信息表、部门信息表、职位信息表、系统设置表等。

(1)员工信息表员工信息表包含员工基本信息、工资核算标准、所在部门、职位等信息。

CREATE TABLE employee( id INT(11) PRIMARY KEYAUTO_INCREMENT, name VARCHAR(50) NOT NULL, sex VARCHAR(5), age INT(3), department VARCHAR(50), position VARCHAR(50), base_salary FLOAT(7,2) NOT NULL, treatment FLOAT(7,2) NOT NULL, remarks VARCHAR(100));(2)工资信息表工资信息表包含员工的工资核算结果、所属月份等信息。

CREATE TABLE salary( id INT(11) PRIMARY KEYAUTO_INCREMENT, employee_id INT(11), salary_month VARCHAR(10) NOT NULL, salary FLOAT(7,2) NOT NULL,bonus FLOAT(7,2) NOT NULL, deduction FLOAT(7,2),create_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP,update_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP, FOREIGN KEY (employee_id) REFERENCES employee(id));(3)部门信息表部门信息表包含部门名称、部门编号、所属公司等信息。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

目录1前言 (1)1.1论文选题的理由和实际意义 (1)1.2国内外关于该课题的研究现状及趋势 (1)2. 需求分析 (2)3 . 系统设计 (3)3.1定义 (3)3.2系统模块图 (4)3.3 E-R图 (5)3.4 数据表的设计 (9)3.5用例举例 (9)3.51数据表 (9)3.5.2 触发器 (10)3.5.3 视图查询表中的信息 (11)3.5.4 存储过程 (11)4 结论(存在问题及解决方案) (11)5 参考文献 (11)附:读书笔记 (12)超市员工薪资管理系统分析报告1前言1.1论文选题的理由和实际意义随着计算机技术的飞速发展和经济体制改革的不断深入,传统超市管理方法、手段以及工作效率已不能适应新的发展需要,无法很好地完成员工工资管理工作。

提高超市管理水平的主要途径是更新管理者的思想,增强对管理活动的科学认识。

基于SQL server数据库技术建立一个通用工资管理系统,该系统为提供了查询、增加记录、删除等功能,功能比较的齐全,并对工资进行了统计如津贴管理、报表统计等。

基本上能满足管理员和超市的要求。

此次数据库课程设计的主要设计如下:原理分析、程序设计过程、程序实现和程序调试以及数据库的设计。

需求分析、概要结构设计、逻辑结构设计、物理结构设计和数据库的实施和维护。

1.2国内外关于该课题的研究现状及趋势随着工作人员数量增加,超市的工资管理工作也变得越来越复杂。

早期的工资统计和发放都是使用人工方式处理纸质材料,不仅花费财务人员大量的时间且不易保存,往往由于个人的因素抄写不慎或计算疏忽,出现工资发放错误的现象。

早期工资管理多采取纸质材料和具有较强的时间限制。

随着我国国民经济建设的蓬勃发展和具有中国特色的社会主义市场经济体制的迅速完善,各个行业都在积极使用现代化的手段,不断改善服务质量,提高工作效率,这些都在很大程度上给超市提出越来越严峻的挑战,对超市体系无论是在行政职能、超市管理水平以及优质服务上都提出更高的要求。

建设一个科学高效的薪资管理系统是解决这一问题的必由之路。

基于以上原因,超市员工薪资管理系统使用电脑安全保存、快速计算、全面统计,实现工资管理的系统化、规范化、自动化。

2. 需求分析(本系统定位于中小型超市,暂时考虑单机环境下的实现;)本系统采用会员式管理,每个属于该超市的职工都有一个属于自己的用户名和密码,通过该用户名和密码就可以登陆系统执行基于自己权限范围内的操作,系统功能应包括员工基本信息的输入输出与修改、各部门的基本信息输入修改、员工工资的基本情况、总工资的计算、统计分析。

员工可以通过此系统查询自己本月的基本工资,福利,奖金以及出去失业保险可住房公积金后的工资。

该工资管理系统主要是由基本资料、工资登记、工资查询、系统管理几个部分组成的,主要用于单位工资发放管理。

(1)基本资料包括员工基本资料和部门的基本资料:员工基本资料:可以输入该员工的编号、姓名、性别、出生日期、位于哪个部门、所处的职业。

部门基本资料:可以输入部门的编号、名称。

(2)工资登记包括工资登记和清数据:可以录入员工本月的基本工资、奖金福利、失业保险和住房公积金,可以清除以前的数据。

(3)工资查询包括员工工资汇总查询。

(4)分类查询包括按部门查询和按日期查询。

3 . 系统设计数据库概念设计是整个数据库设计的关键。

根据用户需求设计数据库的概念,数据模型。

我们首先要将现实世界中的客观对象首先抽象为不依赖任何具体机器的信息结构,这种信息结构不是DBMS支持的数据模型,而是概念级模型。

然后再把概念模型转换为具体机器上DBMS支持的数据模型。

概念模型是对现实世界的抽象和概括。

它真实,充分地反映了现实世界中的事物和事物之间的联系,能满足用户对数据的处理要求。

由于其简洁、明晰、独立于机器,很容易理解,因此可以用概念模型和不熟悉计算机的用户交换意见,使用户能积极参与数据库的设计工作。

概念模型易于变动,还很容易向各种数据模型转换。

概念模型的基本概念涉及的主要有7个,分别为实体、属性、码、域、实体型、实体集、联系。

E-R图是概念模型最常用的表示方法,在E-R图中:1)用长方形表示实体型,在框内写上实体名。

2)用菱形表示实体间的联系,菱形框内写上联系名,用无向边把菱形分别与有关实体相连,在无向边旁标上联系的类型。

若实体间的联系也具有属性,则把属性和菱形也用无向边连上。

3.1定义(1)、系统名称:超市员工薪资管理系统(2)、数据库管理软件:Microsoft SQL Server(3)、数据库设计采用软件:Microsoft Office Visio 2003(4)、系统采用C/S体系结构:Client (客户端)负责提供表达逻辑、显示用户界面信息、访问数据库服务器;Server (服务器)端用于提供数据服务。

(5)、运行平台:windows 2000/xp/linux(6)、数据库的安全性设计:(登录用户、数据库用户、数据库角色等方面是如何设置的)3.2系统模块图图3-1系统模块图功能分析(1)、超市员工信息的管理:查询、增、删、改。

(2)、部门信息的管理:查询、增、删、改。

(3)、个人资料查询:员工可以通过登录认证,选择查询自己的工资和工资结算情况。

(4)、部门信息:可以通过系统更改员工的部门信息,和发布员工的工资情况(5)、员工子系统管理:员工可以通过员工子系统修改和查询个人资料以及工资情况。

3.3 E-R图图3-2 员工实体——E-R(图1)图3-3部门实体——E-R图(图2)图3-4工资实体——E-R 图(图3)图3-5 部门——员工实体E-R 图(图4)图3-6 员工——工资实体E-R 图(图5)3.4 数据表的设计--CREATE TABLE 员工--(员工工号y char (10) PRIMARy KEY,-- 姓名y char(10) not null,-- 性别char(2) constraint Y3 check (性别in ('男','女')),-- 出生日期datetime,-- 部门代码y char (10)foreign key (部门代码y) references 科室(部门代码k),-- 职业char (20))--GO表3-1员工基本表3.5用例举例3.51数据表USE ygxzGOINSERT科室V ALUES('0001','经理室')INSERT科室V ALUES('0002','财务科')INSERT科室V ALUES('0003','技术科')INSERT科室V ALUES('0004','销售科')GOSELECT*FROM科室3.5.2 触发器运用触发器删除表中的信息create trigger del_ygon员工instead of deleteasbegindelete工资where员工工号g in(select员工工号y from deleted) delete员工where员工工号y in(select员工工号y from deleted) enddelete员工where员工工号y='1110003'goSELECT*FROM工资SELECT*FROM员工I3.5.3 视图查询表中的信息create view Y01(员工工号y,姓名y,性别,职业,部门名称,出生日期,基本工资,福利补贴,奖励工资,失业保险,住房公积金)asselect员工工号y,姓名y,性别,职业,部门名称,出生日期,基本工资,福利补贴,奖励工资,失业保险,住房公积金from员工,工资,科室where员工工号y=员工工号g;查询职工总人数select count(distinct员工工号y)职工总人数from Y013.5.4 存储过程(一)创建存储过程查询每个员工的实际发放工资USE ygxzGOCREATE PROCEDURE员工工号y_实际工资@员工工号y char(10)='%'ASBEGINSELECT员工工号y,姓名y,部门代码y,职业,基本工资+福利补贴+奖励工资-失业保险-住房公积金as实际工资,日期FROM员工,工资WHERE员工工号y=员工工号g and员工工号g=@员工工号yEND执行存储过程员工工号y_实际工资execute员工工号y_实际工资'1110011'(2)、创建存储过程查询每个员工的扣除工资----USE ygxz----GO----CREATE PROCEDURE 员工工号y_扣除工资----@员工工号y char(10)='%'----AS----BEGIN----SELECT 员工工号y,姓名y,部门代码y,职业, 失业保险+住房公积金as 扣除工资,日期----FROM 员工,工资----WHERE 员工工号y=员工工号g and 员工工号g=@员工工号y----END------执行存储过程员工工号y_扣除工资----execute 员工工号y_扣除工资'1110011'(3)、创建存储过程查询各部门的人数USE ygxzGOCREATE PROCEDURE部门_人数@部门代码char(10)='%'ASBEGINselect部门名称,count(*)as总人数from员工,科室where部门代码k=部门代码y and部门代码y=@部门代码group by部门名称;END4 结论(存在问题及解决方案)该超市员工薪资管理系统总体说来功能比较齐全,管理员和员工的一些基本的功能都已经具备;数据库的设计方面,建有员工信息表、员工工资信息、奖金以及员工福利。

数据库中存在一些问题,如数据冗余,不够完善。

在做课程设计的过程中也遇到很多问题,一开始时其中最大的问题是不知道用哪种编译工具,后来选择了在编写程序时,编写程序起来也有点困难,最后用过网上查询和向老师咨询掌握了越来越多的数据库知识,使之越来越顺利。

经过调试后终于把自已想到实现的功能一步步实现了,通过这次课程设计使我收获了好多,熟悉了c#的运用,还复习了数据库相关语句的编写。

5 参考文献[1]SQLServer2000[Z]./china/sql/default.mspx[2] 李存斌.数据库应用技术-SQL Server 2008简明教程[M].北京:中国水利水电出版社,2001.25~35[3] 庞山山,刘静.基于多角色的登录模块设计和实现[J].科技信息,2011年31期.201~202[4]王珊,萨师煊数据库系统概论[M] .高等教育出版社,2012附:读书笔记数据库系统概论读书笔记1. 基本类型: a) Char(n):固定长度,指定长度n; b) Varchar(n):可变长度,指定最大长度n; c) Int:整数类型; d) Smallint:小整数类型; e) Numeric(p,d):定点数,p是位数(加上一个符号位),d是精度,小数点右边的位数; f) Real,double,precision:浮点数与双精度浮点数; g) Float(n):精度至少为n位的浮点数。

相关文档
最新文档