数据库课程设计报告(人事管理系统).doc

上传人:w****2 文档编号:6485069 上传时间:2020-02-27 格式:DOC 页数:9 大小:425KB
返回 下载 相关 举报
数据库课程设计报告(人事管理系统).doc_第1页
第1页 / 共9页
数据库课程设计报告(人事管理系统).doc_第2页
第2页 / 共9页
数据库课程设计报告(人事管理系统).doc_第3页
第3页 / 共9页
点击查看更多>>
资源描述
课程设计报告 课程设计题目: 人事管理系统 姓 名: 学 号: 班 级: 指导教师 : 2016 年1月15日1 题目分析:人事管理系统是企、事业单位常见的计算机信息管理系统。它的主要任务是对各种人事信息进行日常的信息管理,如人员信息的输入、查询、修改、增加、删除,迅速准确地完成各种人员信息的统计计算和汇总,快速打印出报表。在建立与实现人事管理系统时,进行了功能划分,能够由数据库管理系统完成的功能应尽可能由数据库管理系统守成,充分发挥数据库管理系统高效、完全、可靠、便捷的性能,减少编程人员的工作量。工资管理系统是数据库管理系统的一个比较典型的应用,前台使用的是微软的VB6.0,后台数据库采用Microsoft SQL Sever数据库。运行结果证明,本人事管理系统极大提高了工作效率,节省了人力和物力,自重满足企业员工管理的需要。人事管理系统的主要任务是用计算机对各种员工信息进行日常的管理,如查询、修改、添加、删除以及存储等,迅速准确地完成各种员工信息的统计计算和汇总工作,针对系统服务对象的具体要求,设计了人事管理系统。人事管理系统主要有以下几大功能:(1) 对单位人员的变动进行处理。一个单位的职工不会是一成不变的,总是在不断的变化:有调出、有调入、也有职工在本单位内部调动。因此,设计系统是应考虑到这些情况。(2) 对职工的工资进行计算、修改。可以对职工的工资档案进行个别、部分和批量修改,同时,能对各职工的工资进行计算,即计算基本工资、岗位工资、水电费及实发金额等。(3) 查询统计功能。要求即可以单项查询,比如查看某个职工的就职情况等;也可以多项查询,比如某个部门所有的员工的工资信息。2 设计分析:1,数据表的设计:(1)基本信息表:键名称数据类型大小空默认值主键员工编号char8Not null姓名char8Not null性别char2null“男”出生年月datetime8null外键所属部门char4null文化程度char4null职称char12null身份证号Varchar50null婚姻状况Char20null备注Varchar100null年龄IntNull(2) 基本部门表键名称数据类型大小空默认值主键部门编号char4Not null部门名称char20null部门负责人char8null部门人数int4null(3) 职工工资表键名称数据类型大小空默认值主键、外键员工编号char8不可以外键部门编号char4可以基本工资numeric5(8,2)可以奖金numeric5(8,2)可以2. ER图设计:3.ER图转换成关系模式:(主键添加下划线)(1) 基本信息(编号,姓名,性别,籍贯,年龄,学历,婚姻状况,部门,职称,参加工作时间,岗位,工资,身份证号,电话号码,备注)(2) 职工部门:(部门编号,部门名称,职工总数,部门负责人,所有职工编号)(3) 职工工资表:(编号,姓名,工资,奖金)(4) 人事管理(编号,部门编号,姓名)3 创建人事管理系统(数据库部分)1创建数据库:(1) 创建数据库的实现:create database 人事管理系统 on primary ( name=人事管理系统, filename=G:数据库人事管理系统.mdf, size=5, maxsize=100, filegrowth=10% ) log on ( name=人事信息管理系统, filename=G:数据库人事管理系统.ldf, size=3, maxsize=100, filegrowth=5 )(2) 创建数据库:2. 创建基本数据表:(1)创建数据标的实现; use 人事管理系统 create table 基本职工信息表(姓名 varchar(20),编号 char(8),性别 char(8),籍贯 char(10),年龄 int,学历 varchar(20),婚姻状况 varchar(20),部门 varchar(20),职称 varchar(20),参加工作时间 char(10),岗位 varchar(30),工资 char(20),省份证号 varchar(30),电话号码 varchar(30),备注 varchar (50)use 人事管理系统 create table 职工部门表(部门编号 int,部门名称 varchar(30),部门负责人 varchar(30),职工总数 int,所有职员编号 varchar(100)use 人事管理系统 create table 职工工资表(编号 char(8),姓名 varchar(50),工资 char(20),奖金 char(8)数据表的创建:基本信息表:职工部门表职工工资表3. 创建存储过程: create proc p2(sname varchar(20) as if exists( select * from 职工基本信息表where sname=sname) select * from 职工基本信息表where sname=sname else print 查无此人 p2 刘 4. 创建触发器: create trigger tr1 on 基本职工信息表 for insert as print 任何人不得添加数据 rollbackselect * from s四,创建人事管理系统访问键面:(VB部分)1,创建键面的实现代码:(1)基本职工信息查询:Private Sub Command1_Click()Unload MeEnd SubPrivate Sub DataGrid1_Click()With Adodc1.RecordsetText1(0) = .Fields(姓名)Text1(1) = .Fields(编号)Text1(2) = .Fields(性别)Text1(3) = .Fields(籍贯)End WithEnd SubPrivate Sub Form_Load()Text1.Text = Text2.Text = Text3.Text = Text4.Text = strsql1 = select *from 基本职工信息表Adodc1.ConnectionString = connAdodc1.RecordSource = strsql1Adodc1.RefreshSet DataGrid1.DataSource = Adodc1With Adodc1.RecordsetText1.Text = .Fields(姓名)Text2.Text = .Fields(编号)Text3.Text = .Fields(性别)Text4.Text = .Fields(籍贯)End WithEnd Sub(2) 基本的职工工资:Private Sub Command1_Click()Unload MeEnd SubPrivate Sub DataGrid1_Click()With Adodc1.RecordsetText1(0) = .Fields(姓名)Text1(1) = .Fields(编号)Text1(2) = .Fields(性别)Text1(3) = .Fields(籍贯)End WithEnd SubPrivate Sub Form_Load()Text1.Text = Text2.Text = Text3.Text = Text4.Text = strsql1 = select *from 基本职工信息表Adodc1.ConnectionString = connAdodc1.RecordSource = strsql1Adodc1.RefreshSet DataGrid1.DataSource = Adodc1With Adodc1.RecordsetText1.Text = .Fields(姓名)Text2.Text = .Fields(编号)Text3.Text = .Fields(性别)Text4.Text = .Fields(籍贯)End WithEnd Sub(3) 职工部门:Private Sub cmdAdd_Click() Data1.Recordset.AddNewEnd SubPrivate Sub cmdDelete_Click() 如果删除记录集的最后一条记录 记录或记录集中唯一的记录 Data1.Recordset.Delete Data1.Recordset.MoveNextEnd SubPrivate Sub cmdRefresh_Click() 这仅对多用户应用程序才是需要的 Data1.RefreshEnd SubPrivate Sub cmdUpdate_Click() Data1.UpdateRecord Data1.Recordset.Bookmark = Data1.Recordset.LastModifiedEnd SubPrivate Sub cmdClose_Click() Unload MeEnd SubPrivate Sub Data1_Error(DataErr As Integer, Response As Integer) 这就是放置错误处理代码的地方 如果想忽略错误,注释掉下一行代码 如果想捕捉错误,在这里添加错误处理代码 MsgBox 数据错误事件命中错误: & Error$(DataErr) Response = 0 忽略错误End SubPrivate Sub Data1_Reposition() Screen.MousePointer = vbDefault On Error Resume Next 这将显示当前记录位置 为动态集和快照 Data1.Caption = 记录: & (Data1.Recordset.AbsolutePosition + 1) 对于 Table 对象,当记录集创建后并使用下面的行时, 必须设置 Index 属性 Data1.Caption = 记录: & (Data1.Recordset.RecordCount * (Data1.Recordset.PercentPosition * 0.01) + 1End SubPrivate Sub Data1_Validate(Action As Integer, Save As Integer) Select Case Action Case vbDataActionMoveFirst Case vbDataActionMovePrevious Case vbDataActionMoveNext Case vbDataActionMoveLast Case vbDataActionAddNew Case vbDataActionUpdate Case vbDataActionDelete Case vbDataActionFind Case vbDataActionBookmark Case vbDataActionClose End Select Screen.MousePointer = vbHourglassEnd Sub(4)基本职工信息:Private Sub cmdAdd_Click() Data1.Recordset.AddNewEnd SubPrivate Sub cmdDelete_Click() 如果删除记录集的最后一条记录 记录或记录集中唯一的记录 Data1.Recordset.Delete Data1.Recordset.MoveNextEnd SubPrivate Sub cmdRefresh_Click() 这仅对多用户应用程序才是需要的 Data1.RefreshEnd SubPrivate Sub cmdUpdate_Click() Data1.UpdateRecord Data1.Recordset.Bookmark = Data1.Recordset.LastModifiedEnd SubPrivate Sub cmdClose_Click() Unload MeEnd SubPrivate Sub Data1_Error(DataErr As Integer, Response As Integer) 这就是放置错误处理代码的地方 如果想忽略错误,注释掉下一行代码 如果想捕捉错误,在这里添加错误处理代码 MsgBox 数据错误事件命中错误: & Error$(DataErr) Response = 0 忽略错误End SubPrivate Sub Data1_Reposition() Screen.MousePointer = vbDefault On Error Resume Next 这将显示当前记录位置 为动态集和快照 Data1.Caption = 记录: & (Data1.Recordset.AbsolutePosition + 1) 对于 Table 对象,当记录集创建后并使用下面的行时, 必须设置 Index 属性 Data1.Caption = 记录: & (Data1.Recordset.RecordCount * (Data1.Recordset.PercentPosition * 0.01) + 1End SubPrivate Sub Data1_Validate(Action As Integer, Save As Integer) 这是放置验证代码的地方 当下面的动作发生时,调用这个事件 Select Case Action Case vbDataActionMoveFirst Case vbDataActionMovePrevious Case vbDataActionMoveNext Case vbDataActionMoveLast Case vbDataActionAddNew Case vbDataActionUpdate Case vbDataActionDelete Case vbDataActionFind Case vbDataActionBookmark Case vbDataActionClose End Select Screen.MousePointer = vbHourglassEnd Sub2.实现:(1)登陆键面:(2)基本菜单(3)修改密码(4) 基本信息:(5)五:实验总结1. 实验中遇到的问题:(1) 数据库中存储过程和触发器的建立,因为在平时的学习中没有太认真的学习这一块以至于在课程设计的过程中这块存在者严重的问题,但是在同学的帮助下及时的得到了解决(2) 数据库与VB的连接访问2,心得:很多的题目看似简单,其实不然,一开始看了只有这么几个模块是心里挺高兴的,但是当我真真正正地去把一个操作写成功时,很多意想不到的情况发生了。有时候会为了一个操作不能调试成功而整个晚上都不能去安心做其他的作业。这也就要求我们要冷静沉着、兢兢业业的去对待这件事,编程是一个很繁琐的过程,要考虑到很多错误转移情况,在这期间会有很多以前不曾想过的问题出现,次数多了,不免会有觉得做不下去的感觉。但是我从中发现,只要一步一步调试、静下心来看待问题,再复杂再微小的问题都会迎刃而解,当一个程序被调试出来时,那时的快乐相比与任何困难都值得的。经过课程设计我觉得立足程序、回归书本才是组重要的,在着手写程序时觉得思路一片混乱,无意间出现的问题会不知道怎么解决。这时,需要回归书本,书本是前人总结的经验,几乎所有情况都会有解决方法。只有把书本“吃透”,在遇到问题是才会反应快。
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 工作总结


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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