




已阅读5页,还剩8页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
VB企业人事管理系统数据库课程设计-课程设计VB企业人事管理系统数据库课程设计首先要感谢老师,如果没有她的耐心指导,我就连数据库是什么都不可能懂。通过这次的课程设计,让我首次编写连接数据库的程序,大约地了解程序设计是怎样一回事,并总结到一些经验,也使老师的教导化成了成果。虽然这一个星期需要不断查资料,然后对着电脑,把一个一个郁闷得问题解决,那过程真的是苦不堪言。但当自己把所学的东西化成成品以后,也便忘了那黑暗的一个星期了。记得有人说过:“学习过程的彷徨犹豫、挫折困顿、在日积月累的渐悟或剎那之间的顿悟之后,彷佛都成了遥远模糊的回忆。”似乎又一次的感受到这种喜悦。在进行需求分析、建立E-R图和建立数据模型,我跟方靖进行了探讨,一次一次的修正,然后再询问老师意见,终于确定好了数据模型。一个良好的数据模型,给以后的编写程序带来了很大方便。在编写代码的过程中,学会了怎么连接数据库,而且对其进行操作,真的是获益匪浅。相信这次的经验,对我日后工作会有相当大的帮助。 参考文献1.萨师煊,王珊。数据库系统概论(第三版)2.刘晓华。SQL Server 2000数据库应用开发3.张勇。Visual Basic 课程设计案例精编4.EVangelos Petroutsos,Kevin Hough(邱仲潘译) Visual Basic6高级开发指南1.引言 22.概要设计. 43.详细设计. 64. 调试与运行结果及存在的主要问题. 165. 课程设计小结6. 参考文献. 引言1.设计目的:配合数据库系统概论课程的教学,使学生能巩固和加深对数据库基础理论和基本知识的理解;掌握使用数据库进行软件设计的基本思想和方法;提高学生运用数据库理论解决实际问题的能力;培养学生调查研究、查阅技术文献、资料、手册以及编写技术文献的能力。2. 设计要求:1、选好题目:先分组,每组两个人(或单独完成),每个题目最多允许6人选做(即有三组),各班学习委员将本班同学的选题情况汇总后于第18周星期一晚上数据库原理概论课程设计时交给莫老师。2、独立思考,独立完成:两人一组时要求每个同学必须独立完成系统中的一个模块的设计任务,课程设计中各任务的设计和调试要求独立完成,遇到问题可以讨论,但不可以拷贝,若发现雷同,不管是抄袭还是被抄袭,直接评定为不及格。3、做好上机准备:每次上机前,要事先编制好准备调试的程序,认真想好调试步骤和有关环境的设置方法,准备好有关的文件。4、根据编程实现的结果,按课程设计报告的撰写规范完成数据库系统课程设计报告(课程设计报告中必须有相关原理分析、程序设计、程序实现和程序调试等内容);课程设计报告(论文)的具体要求如下:课设报告(论文)按照规定用16K纸张进行排版打印,要求装订平整,否则要求返工;课设报告的装订顺序如下:封面任务书中文摘要目录正文附录;正文不少于3000字,正文部分至少包含以下内容, 引言,概要设计,详细设计,调试及运行结果及存在的主要问题,课程设计小结以及参考文献。5、每组实现的结果必须进行检查和演示;程序源代码和可执行程序必须上交,作为考核内容的一部分;(上交时每组交一份即可,文件夹的取名规则为:“课设题目(*_*)”,*为完成人,如“企业人事管理系统的设计与实现(张三_李四)”。该文件夹下包括四个目录:“源代码”、“可执行文件”、“张三_课程设计报告”、“李四_课程设计报告”。由学习委员按规定时间统一上交)。6、报告提交:时间第18周周五下午5点之前;形式课程设计报告(论文)打印稿,和 电子文档,以及和系统相关的系统源代码和可执行程序。3.设计环境:设计环境具体有visual basic 6.0,Microsoft SQL Server 2000.4.同组人员:完成该设计的人员为04软件工程3班的方靖和邝锐强。5.具体分工:经过两人的讨论分析后共同完成该题目的需求分析,概念结构设计以及逻辑结构的设计。在具体实施阶段方靖主要负责登陆界面,各职工基本资料的界面设计及相应的连接数据库部分,实现数据库备份和还原部分以及数据库数据的初始化。邝锐强主要负责对各人员相关资料的删除,修改,增加部分的界面设计及相应的连接数据库部分,操作员管理和权限设置。852VB企业人事管理系统数据库课程设计概要设计1.系统需求分析:通过调查本地的企业,根据企业的具体情况设计企业人事管理系统。主要功能有:人事档案管理:户口状况、政治面貌、生理状况、合同管理等;考勤加班出差管理;人事变动:新进员工登记、员工离职登记、人事变更记录;考核奖惩;员工培训;系统维护:如数据安全管理(含备份与恢复)、操作员管理、权限设置等;由以上可知可以具体设计五类人员:员工,维护部员工,经理,人事部经理以及总裁,其中员工只能查询本人的基本资料:工号,姓名,性别,户籍情况,政治面貌,生理状况,合同,所属部门以及自身的考勤考核奖励情况。而维护部员工除了可以完成普通员工的功能外还可以进行系统维护。经理可以管理员工,包括增加删除本部门员工以及修改员工资料。人事部经理在经理的功能上增加了可以删除增加修改其他部门员工资料的功能,而总裁可以任意增加删除修改所有部门经理及员工的资料。而对于所有人员均记录其基本资料和日常状况资料。2.系统结构设计:由需求分析可以划出系统结构图,如下:3.功能模块设计:由以上分析可以划出功能模块设计图,如下:详细设计1.系统数据库设计:经过需求分析设计后得出数据库设计的概念模型,其中包含两个实体,一个是人员表,一个是日常情况表。如下:人员(工号,姓名,性别,年龄,户口,政治面貌,生理状况,合同管理,照片,密码,所管(属)部门(地区),职位)日常情况(工号,日期,考勤,加班,惩罚,培训)具体创建表的具体代码如下:create table BaseTable(BID varchar(10) not null unique,BName varchar(20) not null,BAge int,BSex varchar(2),BResidence varchar(50),BPolity varchar(50),BHealthy varchar(50),BAgreement varchar(50),BDepartment varchar(20) not null,BPhoto image,BPassword varchar(50) not null,BPosition varchar(10) not null,primary key(BID),check (BAge0), check (BSex in (男,女),check (BPosition in (员工,维护部员工,经理,人事经理,总裁);create table ExtendTable(EID varchar(10) not null,EDate datetime not null,EState varchar(4),-考勤,内容为“请假,旷到,迟到,正常,出差”EOverwork varchar(2),-加班,内容“有,无”ERAP varchar(500),-奖惩(rewards and punishment)ETraining varchar(500),primary key(EID,EDate),check (EState in (请假,旷到,迟到,正常,出差),check (EOverwork in (有,无),foreign key(EID) references BaseTable(BID) on delete cascade );所创建表的设计图如下所示:BaseTable表:用E-R图表示该实体如下:VB企业人事管理系统数据库课程设计用E-R图表示该实体如下:完整的E-R图如下所示:系统主要功能模块设计各模块的主要算法对应的原代码1、数据库的连接: 利用控件Adodc连接:在Adodc控件中,设置ConnectStringProvider=”SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=ManageSystem”,然后再设置CommandType为8 adCmdUnknown,数据源定为SQL查询语句,语句内容根据不同需要而更改。 设定ConnectString属性PS:当然,可以手工输入,也可以利用“生成”让VB自动给出语句。 设定RecordSource属性连接数据库核心语句:Adodc1.ConnectStringProvider=”SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=ManageSystem”Adodc1.RecordSource = SQL查询语句Adodc1.Recordset.OpenAdodc1.Refresh断开数据库核心语句:Adodc1.Recordset.Close 利用ADODB对象作为SQL连接接口:由于在程序中使用瞬间连接数据库比长期连接数据库高效,而且在本程序中大量使用,因而新增了模块Module1,自定义了SqlConnect函数作为连接,SqlDisConnect函数来断开连接,方便编写程序,提高代码使用率,提高开发效率和运行效率。连接数据库核心语句:Set Ado_Conn = New ADODB.ConnectionSet Ado_RS = New ADODB.Recordsetstr_CS = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=ManageSystemstr_RS = SQL查询语句SqlConnect Ado_Conn, Ado_RS, str_CS, str_RS其中模块中定义了SqlConnect函数: Public Sub SqlConnect(ByVal Ado_Connection As ADODB.Connection, _ ByVal Ado_Recordset As ADODB.Recordset, _ Ado_ConnectionString As String, _ Ado_RecordSource As String) Ado_Connection.ConnectionString = Ado_ConnectionString Ado_Connection.ConnectionTimeout = 30 Ado_Connection.Open Ado_Recordset.Open Ado_RecordSource, Ado_ConnectionEnd Sub断开数据库核心语句:SqlDisConnect Ado_RS其中模块中定义了SqlDisConnect函数:Public Sub SqlDisConnect(ByVal AdoRecordset As ADODB.Recordset) If AdoRecordset.State Then AdoRecordset.CloseEnd Sub2、数据的查询: 利用表格方式对SQL数据进行查询:利用连接数据库的方法,返回一个RecordSet集合。通过MSHFlexGrid控件、DataGrid控件等控件对集合作表格方式的输出。使用Adodc控件时,可以通过属性的设定,把MSHFlexGrid控件、DataGrid1控件捆绑在Adodc控件上。 对用Adodc控件捆绑当使用ADODB对象时,可以通过Set语句对MSHFlexGrid.DataSourse 进行赋ADODB对象的Recordset值。但是DataGrid1则不能。 利用字符窜方式对SQL数据进行查询利用连接数据库的方法,返回一个RecordSet集合。通过对RecordSet集合的提取,把元组中的属性值赋给TextBox等控件控件,让其输出。核心代码: Adodc1.Recordset.MoveFirstVB企业人事管理系统数据库课程设计Adodc1.Recordset.Find 工号=1234Text1.Text = Adodc1.Recordset.Fields(工号).Value Text2.Text = Adodc1.Recordset.Fields(姓名).Value 对查询所得到的集合作出判空:方法有多种:(设Ado_RS为Recordset)A、利用EOF和BOF两个属性进行判断: If Ado_RS.BOF = False And Ado_RS.EOF = False Then 集合不为空 Else 集合为空 End If B、利用Recordset 的RecordCount属性判断: If Ado_RS.RecordCount 0 Then 集合不为空 Else 集合为空 End If C、利用DataGrid 的ApproxCount属性来判断: 判断条件会因表格的自定义显示而有所不同 If DataGrid1.ApproxCount 0 Then 集合不为空 Else 集合为空 End If D、利用MSHFlexGrid的Rows属性判断: 判断条件会因表格的自定义显示而有所不同 If MSHFlexGrid1. Rows 1 Then 集合不为空 Else 集合为空 End If 查询特定元组对于特定元组,由于主码的唯一性,所以当对主码作准确查询时,所得的表只有两种情况:只有一条元组或者什么都没有。通过的方法,可以对集合判空。如果为空,则认为特定元组不存在,查询失败;如果返回一条元组,则指针肯定是指向该元组,可以马上对数据进行读取。核心代码: Set Ado_Conn = New ADODB.Connection Set Ado_RS = New ADODB.Recordset str_CS = Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=ManageSystem str_RS = select * from BaseTable where BID= & Trim(Text1.Text) & SqlConnect Ado_Conn, Ado_RS, str_CS, str_RS Ado_RS.RecordCount 检测帐号是否存在 If Ado_RS.EOF = False Then 如果帐号存在 If Trim(Ado_RS.Fields(BID) = Trim(Text1.Text) And Trim(Ado_RS.Fields(BPassword) = Trim(Text2.Text) Then还有一种方法,利用Find方法进行查找,如果找到则指针指向该元组。如找不到则返回错误。因此利用捕获错误的方法也可以得到效果。第三种,利用MSHFlexGrid控件、DataGrid控件等,均可以利用控件内部的属性和方法进行查询。3、数据的修改: 利用嵌入SQL语句。 首先使用ADODB对象连接的方法,利用ADODB.Connection.Execute直接嵌套运行SQL语句对数据进行修改。 核心语句: Ado_Conn.Execute “updata 表名 set 某属性=XX” 此外还可以利用ADO接口提供的Fields属性对数据进行修改。 核心语句:Adodc1.Recordset.Find 工号= & Text3.Text & Adodc1.Recordset.Fields(姓名) = Text4.Text Adodc1.Recordset.Fields(所属部门) = Combo2.Text Adodc1.Recordset.Fields(职位) = Combo3.Text Adodc1.Recordset.Update Adodc1.Refresh 利用DataGrid控件对数据库进行强行修改。只需要连接好数据库,然后对DataGrid进行捆绑,而且DataGrid的AllowUpdate等属性设为True就可以通过界面直接修改。4、数据的删除基本方法跟3一样。 使用SQL嵌套语句删除数据。Ado_Conn.Execute “delete from表名 where某属性=XX” 此外还可以利用ADO接口提供的Fields属性对数据进行修改。 核心语句: Adodc1.Recordset.MoveFirst Adodc1.Recordset.Find 工号= & Text3.Text & Adodc1.Recordset.DeleteAdodc1.Recordset.Update5、数据的添加:基本方法跟3一样。 使用SQL嵌套语句增加数据。Ado_Conn.Execute “insert into 表名 values(某属性=XX)” 此外还可以利用ADO接口提供的Fields属性对数据进行修改。 核心语句:Adodc1.Recordset.MoveFirstAdodc1.Recordset.AddItem Adodc1.Recordset.Fields(姓名) = Text4.Text Adodc1.Recordset.Fields(所属部门) = Combo2.Text Adodc1.Recordset.Fields(职位) = Combo3.Text Adodc1.Recordset.Update Adodc1.Refresh7、权限的分配读取BaseTable(员工基本表)里面的BPosition(职位)。通过对其的判断,来选择其他更多的步骤。核心语句:VB企业人事管理系统数据库课程设计调试与运行结果及主要问题在程序设计过程中遇到的主要问题是如何将数据库数据和vb连接起来,设置外码与被参照关系中主码的及联关系以及如何高效地实现查询功能。同时由于在数据库基本资料表中添加了照片属性,但由于能力有限,至今仍不懂往数据库表中插入图片的方法。另外一个方面的问题就是界面不够漂亮,显得有点死板。主要截图如下: 登陆框 总裁管理截图 员工管理截图 数据备份和恢复经理管理截图考勤-奖惩-培训一览表 添加经理截图 添加员工截图维护员工查询截图 一般员工查询截图一、课程设计目的 数据库原理概论课程设计是我校软件工程专业(本科)教学大纲要求的重要实践性环节之一,是学习完数据库系统概论课程后进行的一次全面的综合练习。其目的在于:配合数据库系统概论课程的教学,使学生能巩固和加深对数据库基础理论和基本知识的理解;掌握使用数据库进行软件设计的基本思想和方法;提高学生运用数据库理论解决实际问题的能力;培养学生调查研究、查阅技术文献、资料、手册以及编写技术文献的能力。二、课程设计题目以SQL Server 2000作为后台数据库,以VB 6.0 、VC6.0或其它开发工具作为前台开发工具,完成一个小型数据库应用系统的设计开发。学生2人1组,自愿组合,每人独立完成系统中的一个模块,每组从以下课题中选择一个或自拟课题,完成系统的分析、设计和开发。(1)图书销售管理系统的设计与实现(2)通用工资管理系统的设计与实现(3)报刊订阅管理系统的设计与实现(4)医药销售管理系统的设计与实现(5)电话计费管理系统的设计与实现(6)宾馆客房管理系统的设计与实现(7)学生学籍管理系统的设计与实现(8)车站售票管理系统的设计与实现(9)汽车销售管理系统的设计与实现(10)仓储物资管理系统的设计与实现(11)企业人事管理系统的设计与实现(12)选修课程管理系统的设计与实现三、课程设计主要内容(1)图书销售管理系统的设计与实现调查一个书店的图书销售业务,设计的图书销售系统主要包括进货、退货、统计、销售、查询功能。进货:根据某种书籍的库存量及销售情况确定进货数量,根据供应商报价选择供应商。输出一份进货单并自动修改库存量,把本次进货的信息添加到进货库中。退货:顾客把已买的书籍退还给书店。输出一份退货单并自动修改库存量,把本次退货的信息添加到退货库中。统计:根据销售情况输出统计的报表。一般内容为每月的销售总额、销售总量及排行榜等信息。销售:输入顾客要买书籍的信息,自动显示此书的库存量,如果可以销售,打印销售单并修改库存,同时把此次销售的有关信息添加到日销售库中。查询:允许用户设置条件进行进货、退货、统计、销售和库存书籍的信息查询。系统维护:如数据安全管理(含备份与恢复)、操作员管理、权限设置等;(2)通用工资管理系统的设计与实现考察某中小型企业,要求设计一套企业工资管理系统,其中应具有一定的人事档案管理功能。工资管理系统是企业进行管理的不可缺少的一部分,它是建立在人事档案系统之上的,其职能部门是财务处和会计室。通过对职工建立人事档案,根据其考勤情况以及相应的工资级别,算出其相应的工资。为了减少输入帐目时的错误,可以根据职工的考勤、职务、部门和各种税费自动求出工资。为了便于企业领导掌握本企业的工资信息,在系统中应加入各种查询功能,包括个人信息、职工工资、本企业内某一个月或某一部门的工资情况查询,系统应能输出各类统计报表。(3)报刊订阅管理系统的设计与实现通过对某企业的报刊订阅业务进行分析、调查,设计该企业的报刊订阅管理系统。主要实现以下功能:录入功能:录入订阅人员信息、报刊基本信息;订阅功能:订阅人员订阅报刊(并计算出其金额);查询功能:按人员查询、按报刊查询、按部门查询有关订阅信息,对查询结果能进行预览和打印;统计功能:按报刊统计、按人员统计、按部门统计,对统计结果能进行预览和打印;系统维护:如数据安全管理(含备份与恢复)、操作员管理、权限设置等;(4)医药销售管理系统的设计与实现调查从事医药产品的零售、批发等工作的企业,根据其具体情况设计医药销售管理系统。主要功能包括:基础信息管理:药品信息、员工信息、客户信息、供应商信息等;进货管理:入库登记、入库登记查询、入库报表等;库房管理:库存查询、库存盘点、退货处理、库存报表等;销售管理:销售登记、销售退货、销售报表及相应的查询等;财务统计:当日统计、当月统计及相应报表等;系统维护:如数据安全管理(含备份与恢复)、操作员管理、权限设置等;(5)电话计费管理系统的设计与实现对邮电局电话计费业务进行调查,设计的系统要求:能用关系数据库理论建立几个数据库文件存储用户信息、收费员信息和收费信息等资料;VB企业人事管理系统数据库课程设计具有对各种数据文件装入和修改数据的功能;能在用户交费同时打印发票;能通过统计制定未来邮局服务计划方案;有多种查询和统计功能。系统维护:如数据安全管理(含备份与恢复)、操作员管理、权限设置等;(6)宾馆客房管理系统的设计与实现具体考察本市的宾馆,设计客房管理系统,要求:具有方便的登记、结帐功能和预订客房的功能,能够支持团体登记和团体结帐;能快速、准确地了解宾馆内的客房状态,以便管理者决策;提供多种手段查询客人的信息;具备一定的维护手段,有一定权利的操作员在密码的支持下才可以更改房价、房间类型、增减客房;完善的结帐报表系统;系统维护:如数据安全管理(含备份与恢复)、操作员管理、权限设置等;(7)学生学籍管理系统的设计与实现调查学校学生处、教务处,设计一个学籍管理系统。要求:建立学生档案,设计学生入学、管理及查询界面;设计学生各学期、学年成绩输入及查询界面,并打印各项报表;根据各年度总成绩,查询、输出学生学籍管理方案(优秀、合格、试读、退学);毕业管理;系统维护:如数据安全管理(含备份与恢复)、操作员管理、权限设置等;(8)车站售票管理系统的设计与实现考察市长途汽车站、火车站售票业务,设计车站售票管理系统。要求:具有方便、快速的售票功能,包括车票的预订和退票功能,能够支持团体的预订票和退票。能准确地了解售票情况,提供多种查询和统计功能,如车次的查询、时刻表的查询等;能按情况所需实现对车次的更改、票价的变动及调度功能;完善的报表系统;具备一定的维护功能,如数据安全管理(含备份与恢复)、操作员管理、权限设置等;(9)汽车销售管理系统的设计与实现调查本地从事汽车销售的企业,根据企业汽车销售的情况,设计用于汽车销售的管理系统,主要功能有:基础信息管理:厂商信息、车型信息和客户信息;进货管理:车辆采购、车辆入库;销售管理:车辆销售、收益统计;仓库管理:库存车辆、仓库明细、进销存统计;系统维护:如数据安全管理(含备份与恢复)、操作员管理、权限设置等;(10)仓储物资管理系统的设计与实现通过调查一个仓储企业,对仓库的管理业务流程进行分析。库存的变化通常是通过入库、出库操作来进行。系统对每个入库操作均要求用户填写入库单,对每个出库操作均要求用户填写出库单。在出入库操作同时可以进行增加、删除和修改等操作。用户可以随时进行各种查询、统计、报表打印、帐目核对等工作。另外,也可以用图表形式来反应查询结果。(11)企业人事管理系统的设计与实现通过调查本地的企业,根据企业的具体情况设计企业人事管理系统。主要功能有:人事档案管理:户口状况、政治面貌、生理状况、合同管理等;考勤加班出差管理;人事变动:新进员工登记、员工离职登记、人事变更记录;考核奖惩;员工培训;系统维护:如数据安全管理(含备份与恢复)、操作员管理、权限设置等;(12)选修课程管理系统的设计与实现调查学校教务处,设计用于管理全校学生选修课活动的系统。主要功能有:全校选修计划课程管理;全校选修开课课程管理;全校学生选课管理;全校选修课成绩管理;打印报表;系统维护,如数据安全管理(含备份与恢复)、操作员管理、权限设置等;要求:设计学生选课录入界面及学生选课查询界面;设计课程输入界面和学生选课表及课程选修情况查询界面;根据学生库和课程库,输出学生课程表(选课冲突时按学号分配课程);以上(1)(12)各题均有如下要求:(1) 针对给定的系统进行需求分析,设计系统结构图和系统功能模块图; (2) 针对需求分析,画出E-R图表示的概念模型,并将其转换为至少满足3NF的关系模式,设计较为合理的数据库模式;(3) 系统中应能体现对数据库的保护(数据恢复、并发控制、安全性和完整性);(4) 系统应该有较为友好的用户界面;(5)根据系统的设计过程与结果,撰写课程设计报告(论文)。四、课程设计要求1、选好题目:先分组,每组两个人(或单独完成),每个题目最多允许6人选做(即有三组),各班学习委员将本班同学的选题情况汇总后于第18周星期一晚上数据库原理概论课程设计时交
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论