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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

人事管理系统附程序设计和数据库设计资料.docx

1、人事管理系统附程序设计和数据库设计资料人事管理系统(附程序设计和数据库设计)人事管理系统摘要SQL Server数据库课程设计主要涉及的数据库相关知识有SQL Server 2000、E-R图、表结构设计、Visual Basic.NET等。设计中将人事管理系统用E-R图来表示,使得各部分的关系简洁明了,清晰可见,也使得设计过程简单得多。表结构设计是将E-R图中的各实体、属性等的关系具体化,具备了各种数据库所该有的各个具体数据信息和要求。正确使用SQL Server 2000的语句、语法和结构方便了程序设计及对于某些复杂数据的访问。借助Visual Basic.NET软件完成这一系列的工作。使

2、用SQL Server数据库软件完成表的建立等工作。一、系统需求分析该人事管理系统的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能够充分满足各种信息的输出和输入。收集基本数据、数据结构以及数据处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。一直以来人们使用传统人工的方式管理员工档案,这种管理方式存在着许多缺点,譬如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。人事管理信息系统的出现

3、轻而易举的解决了传统管理人员档案的方法的缺点。伴随着人事管理信息系统的广泛应用,它已经成为了任何一家企业公司都不可缺少的组成部分,它的存在使得管理者更容易了解自己公司的员工,便于分配人员,易于进行调整。所以人事管理信息系统能够为管理人员提供充足的信息和快捷的查询手段。二、系统总体设计1.概述一个正常运作的公司必定有一个健全的人事管理系统,来管理员工的信息,包括员工的编号、姓名、性别、工龄、工资以及奖惩情况。除了这些基本的用处外,此系统还提供员工信息更改或删除等的功能,使公司的人事管理方便快捷而又清晰。面对各种不同种类的信息,需要合理的数据库结构来保存数据信息以及有效地程序结构支持各种数据操作的

4、执行。我们现在介绍的这个人事管理系统是一个非常通用的管理系统。它讲述如何建立一个公司人事管理系统。他可以将关于的一切员工信息记录在案,并且对其进行输入、修改、查询,大大提高了公司员工管理的工作效率。2.业务分析针对一般人事管理系统的需求,通过对人事管理过程的内容和数据流程分析,设计如下面所示的数据项和数据结构:基本信息包括:人员基本信息:编号、姓名、性别、出生日期、参加工作日期住址、电话等;来本单位的日期及来自的单位;职称及评定的时间和工资级别;职工的奖惩登录。 工资的确定:基本工资与职称和级别有关;职务补助、房补由职称决定;工龄津贴由工龄决定;洗理费由性别决定;另有每人奖金不同。查询员工的各

5、项基本信息。查询每个职工的详细工资清单。用户管理:信息录入、工资计算的工作人员及普通职工查询自己的信息。其中系统的整体功能可参考如下的整体功能模块图:图2-2整体功能模块图3.功能设计系统开发的整体任务是实现各种信息的系统化、规范化和自动化。系统功能分析是在系统开发的总体任务的基础上完成的。本人事管理系统需要完成的功能主要有:职工信息的修改、更新和删除,包括职称、工资、工龄等的变化;工龄信息的变更会使工龄年数和工龄津贴的数据随之发生变化;奖惩会根据具体信息的输入而有所变化。此系统的功能具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能够充分满足各种信息的输出和输入。收集基本数据、

6、数据结构以及数据处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。根据以上信息按照结构化程序设计的要求,得到如图2-1所示我负责部分的功能模块图。图2-1 功能模块图(部分)4.概念结构设计人事管理系统概念设计产生的基本E-R模型如图2-4所示。图2-3人事管理系统基本E-R图5.逻辑结构设计在逻辑结构设计中主要就是把概念结构设计阶段产生的系统基本E-R图转化为具体的DBMS所支持的数据模型。在该管理系统中,我们采用关系模型来进行分析和设计,将实体、实体的属性和实体之间的联系在遵循转化原则的前提下进行转化,并标出主键。其中,各实体的属性如下所示:职工(编号,姓名,性别,出生日期,参

7、加工作,住址,电话,来自本单位的时间,职称名,评定时间,工龄年数)工龄(工龄津贴,工龄年数)洗理费(性别,金额)奖惩(编号,金额,内容)职称表(职称名,工资级别,基本工资,职务补助,房补)管理员(登录账号,密码)6.物理结构设计职工表的创建语句如下:CREATE TABLE 职工表 ( 编号 varchar (50) COLLATE Chinese_PRC_CI_AS NOT NULL , 姓名 varchar (50) COLLATE Chinese_PRC_CI_AS NULL , 性别 char (10) COLLATE Chinese_PRC_CI_AS NULL , 出生日期 dat

8、etime NULL , 参加工作日期 datetime NULL , 住址 varchar (50) COLLATE Chinese_PRC_CI_AS NULL , 电话 varchar (50) COLLATE Chinese_PRC_CI_AS NULL , 来自本单位的时间 datetime NULL , 职称名 varchar (50) COLLATE Chinese_PRC_CI_AS NULL , 评定时间 datetime NULL , 工龄年数 int NULL , 编号1 varchar (50) COLLATE Chinese_PRC_CI_AS NULL , CONS

9、TRAINT PK_职工表 PRIMARY KEY CLUSTERED ( 编号 ) ON PRIMARY , CONSTRAINT FK_职工表_工龄表 FOREIGN KEY ( 工龄年数 ) REFERENCES 工龄表 ( 工龄年数 ), CONSTRAINT FK_职工表_洗理费 FOREIGN KEY ( 性别 ) REFERENCES 洗理费 ( 性别 ), CONSTRAINT FK_职工表_职称表 FOREIGN KEY ( 职称名 ) REFERENCES 职称表 ( 职称名 ) ON PRIMARYGO职称表的创建语句如下:CREATE TABLE 职称表 ( 职称名 v

10、archar (50) COLLATE Chinese_PRC_CI_AS NOT NULL , 工资级别 varchar (50) COLLATE Chinese_PRC_CI_AS NULL , 基本工资 money NULL , 职务补助 money NULL , 房补 money NULL , CONSTRAINT PK_职称表 PRIMARY KEY CLUSTERED ( 职称名 ) ON PRIMARY ) ON PRIMARYGO管理员表的创建:CREATE TABLE 管理员表 ( 登录账号 char (10) COLLATE Chinese_PRC_CI_AS NOT NU

11、LL , 密码 char (10) COLLATE Chinese_PRC_CI_AS NOT NULL , CONSTRAINT PK_管理员表 PRIMARY KEY CLUSTERED ( 登录账号 ) ON PRIMARY ) ON PRIMARYGO工龄表的创建语句如下:CREATE TABLE 工龄表 ( 工龄年数 int NOT NULL , 工龄津贴 money NULL , CONSTRAINT PK_工龄表 PRIMARY KEY CLUSTERED ( 工龄年数 ) ON PRIMARY ) ON PRIMARYGO奖惩表的创建语句如下:CREATE TABLE 奖惩 (

12、 编号1 varchar (50) COLLATE Chinese_PRC_CI_AS NOT NULL , 金额 money NULL , 内容 varchar (50) COLLATE Chinese_PRC_CI_AS NULL , CONSTRAINT PK_奖惩 PRIMARY KEY CLUSTERED ( 编号1 ) ON PRIMARY , CONSTRAINT FK_奖惩_职工表 FOREIGN KEY ( 编号1 ) REFERENCES 职工表 ( 编号 ) ON PRIMARYGO洗理费表的创建语句如下:CREATE TABLE 洗理费 ( 性别 char (10) C

13、OLLATE Chinese_PRC_CI_AS NOT NULL , 金额 money NULL , CONSTRAINT PK_洗理费 PRIMARY KEY CLUSTERED ( 性别 ) ON PRIMARY ) ON PRIMARYGO三、数据库表结构设计根据数据库的需求分析和概念结构设计,设计了名称为职工的数据库表。表的设计结果如下面各表所示:表3-1 职工表列名数据类型长度是否允许为空编号varchar50否姓名varchar50是性别char10是出生日期datetime8是参加工作日期datetime8是住址varchar50是电话varchar50是来本单位的时间date

14、time8是职称名varchar50是评定时间datetime8是工龄年数int4是编号1varchar50是表3-2 管理员表列名数据类型长度是否允许为空登录账号char10否密码char10否表3-3职称表列名数据类型长度是否允许为空职称名varchar50否工资级别varchar50是基本工资money8是职务补助money8是房补money8是表3-4工龄表列名数据类型长度是否允许为空工龄年数int4否工龄津贴money8是表3-5洗理费列名数据类型长度是否允许为空性别char10否金额money8是表3-6奖惩列名数据类型长度是否允许为空编号1varchar50否金额money8是内

15、容varchar50是四、功能分析下图为职工信息表的截图,利用此表可以查询、修改、更新等相关信息:图4-1 职工表管理员登录账号需要输入账号及密码,当然必须符合以下表对账号和密码的设计要求:图4-2 管理员表下面的这个登录界面可提供职工和管理员登录,分别单击职工相关功能和管理员相关功能会出现不同的下拉菜单可供查询或是更改不同的所需信息内容,如下图:图4-3 登录界面当在第一个界面点开职工相关功能,单击职工登录会进入下面的界面,只要输入正确的职工编号和职工姓名,单击登录就可进实现更多的信息查询和更改等操作,如下图:图4-4 职工登录页面如果输入的职工编号或者职工姓名不匹配,或是不正确、不存在等情

16、况下,系统会弹出对话框提示登录失败,编号或职工姓名错误,如下图所示:图4-5 登录失败如果职工登陆成功的话会进入“欢迎您查看基本详细信息”的界面,再次输入本人的相关信息,编号、职称、工龄、性别,单击不同的按钮则会出现不同的信息,下图为单击“查看基本信息”出现的界面:图4-6 查看基本信息下图为单击了“查看详细工资清单”按钮后出现的界面,信息如下:图4-7 查看详细工资清单如果在登录界面职工相关功能的下拉菜单中选择奖惩登录,则会进入“欢迎您进入奖惩登录界面”的界面,输入职工编号,单击“查看”按钮,则会出现相应的奖惩信息,如下图所示:图4-8 奖惩登录界面以上是我所负责部分功能的分析与介绍,其中包

17、括SQL Server 数据库中的两个表的创建和Visual Basic.NET中的几个界面的设计与分析。五、相关代码设计与分析登录界面Form1的部分代码如下:定义公共类Form1继承系统窗体功能:Public Class Form1 Inherits System.Windows.Forms.Form当单击MenuItem5时跳转到Form4 界面,定义f112为Form4: Private Sub MenuItem5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem5.Cl

18、ick Dim f112 As New Form4 f112.Show()End Sub当单击MenuItem3时跳转到Form2 界面,定义f111为Form2: Private Sub MenuItem3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem3.Click Dim f111 As New Form2 f111.Show()End Sub当单击MenuItem4时跳转到Form5 界面,定义f113为Form5: Private Sub MenuItem4_Clic

19、k(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem4.Click Dim f113 As New Form5 f113.Show() End SubEnd Class职工登录页面Form2的代码如下:当单击按钮2 的时候,清除TextBox1和TextBox2的内容Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click TextBo

20、x1.Clear() TextBox2.Clear()End Sub当单击按钮1的时候链接到“职工表”,如果职工编号与姓名存在并匹配则成功登陆,显示Form3界面,否则,弹出对话框“登录失败,编号或职工姓名错误!”。 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim sqlstr As String = Select * from 职工表 Dim com As SqlClient.SqlCommand = New SqlC

21、lient.SqlCommand(sqlstr, SqlConnection1) Dim flag As Boolean SqlConnection1.Open() Dim r As SqlClient.SqlDataReader = com.ExecuteReader While r.Read If TextBox1.Text = r(编号) And TextBox2.Text = r(姓名) Then flag = True End If End While SqlConnection1.Close() If Not flag Then MessageBox.Show(登录失败,编号或职工

22、姓名错误!) Else Dim f110 As New Form3 f110.Show() End If Me.Close() End Sub查看基本详细信息的代码如下:单击按钮2时跳转到Form1界面,定义f113为Form1:Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Dim f113 As New Form1 f113.Show()End Sub单击按钮3时链接到数据库的职工表,其中显示的信息与输入的编号相对应: Private Sub Button3_Clic

23、k(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click DataSet11.Clear() SqlDataAdapter1.Fill(DataSet11, 职工表) DataGrid1.SetDataBinding(DataSet11, 职工表) Dim dv As DataView = New DataView(DataSet11.Tables(职工表) Dim t As String = TextBox1.Text Dim t1 As String = Dim t2 As Str

24、ing = dv.RowFilter = 编号= & t1 & t & t2 DataGrid1.SetDataBinding(dv, )End Sub单击按钮1连接到数据库的职称表,其中的信息与输入的职称名相对应: Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click DataSet11.Clear() SqlDataAdapter2.Fill(DataSet11, 职称表) DataGrid1.SetDataBinding(Dat

25、aSet11, 职称表) Dim dv As DataView = New DataView(DataSet11.Tables(职称表) Dim t As String = TextBox2.Text Dim t1 As String = Dim t2 As String = dv.RowFilter = 职称名= & t1 & t & t2 DataGrid1.SetDataBinding(dv, )End Sub单击按钮2链接到数据库中的工龄表,其中显示的工龄数与输入的信息相对应: Private Sub Button2_Click_1(ByVal sender As System.Obj

26、ect, ByVal e As System.EventArgs) Handles Button2.Click DataSet11.Clear() SqlDataAdapter3.Fill(DataSet11, 工龄表) DataGrid1.SetDataBinding(DataSet11, 工龄表) Dim dv As DataView = New DataView(DataSet11.Tables(工龄表) Dim t As String = TextBox3.Text Dim t1 As String = Dim t2 As String = dv.RowFilter = 工龄年数= &

27、 t1 & t & t2 DataGrid1.SetDataBinding(dv, )End Sub单击按钮4时,链接到洗理费表,其中显示的信息与输入的性别相对应: Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click DataSet11.Clear() SqlDataAdapter4.Fill(DataSet11, 洗理费) DataGrid1.SetDataBinding(DataSet11, 洗理费) Dim dv As Dat

28、aView = New DataView(DataSet11.Tables(洗理费) Dim t As String = TextBox4.Text Dim t1 As String = Dim t2 As String = dv.RowFilter = 性别= & t1 & t & t2 DataGrid1.SetDataBinding(dv, ) End Sub奖惩登录页面的代码如下:单击按钮2时,清除TextBox1的内容:Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArg

29、s) Handles Button2.Click TextBox1.Clear()End Sub单击按钮1时,链接到数据库中的奖惩表,其中显示的信息与输入的编号1相对应: Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click DataSet71.Clear() SqlDataAdapter1.Fill(DataSet71, 奖惩) DataGrid1.SetDataBinding(DataSet71, 奖惩) Dim dv As DataView = New DataView(DataSet71.Tables(奖惩) Dim t As String = TextBox1.Text Dim t1 A

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2