图5.1-4
实现显示所有员工资料的主要代码如下:
rd.Open "SELECT * FROM 人事表单", db, adOpenStatic, adLockOptimistic
Set MSHFlexGrid4.DataSource = rd
6 系统配置
好的数据库系统必然有一个相对最优的系统配置方案,系统配置要根据用户的实际情况设计,此外,用户的维护水平也是一个重要的方面.
6.1 软件配置
软件配置主要包括数据库的选择和操作系统的选择。软件配置要根据用户对系统的稳定性要求、系统的容量以及用户的维护水平来确定。
( l )数据库选择
可以根据数据量的大小选择不同的数据库,根据本超市的使用环境,经实地测定,该超市属于中型城市,记录数在5000左右,稳定性要求较高,维护水平一般,因此备选数据库为SQL server。
大中型的超市和购物中心,由于商品的流动非常快,要求数据库的吞吐量和稳定性较高,这就需要选择更好的数据库。也有些情况,由于建设经费的限制,只能选择较为便宜的数据库,这要根据用户的需要而定。数据库的选择还要考虑与操作系统的配合。
( 2 )操作系统选择
根据用户量的大小选择不同的操作系统。当然,一般情况下,用户对微软 Windows 界面比较熟悉,因此,建议客户端都使用 Windows 98 、 Windows 2000 或者 Windows XP 操作系统。
6.2 硬件配置
硬件配置主要包括客户端硬件的选择和服务器端硬件的选择。系统的硬件配置要根据用户对系统的稳定性要求、系统的容量、系统的吞吐量以及用户的维护水平来确定。
( 1 )客户端硬件选择——可以根据稳定性要求选择不同的客户端一般情况下,对客户端的要求不高.
( 2 )服务器端硬件选择——可以根据数据盆和吞吐里的大小选择不间的服务器硬件。具体的配置建议是PIII/256M/20G。
本系统需要有能够支持TCP / IP 相关协议的小型局域网。可以根据用户情况选择不同的网络配置,由于该系统适合社区学校的超市,建议使用百兆模式。
7 文档设计总结
数据库设计是建立数据库及其应用系统的核心和基础,它要求对于指定的应用环境,构造出较优的数据库模式,建立起数据库应用系统,并使系统能有效地存储数据,满足用户的各种应用需求。一个设计不合理的数据库模型,不仅会增加客户端和服务器端程序的编程和维护的难度,而且将会影响系统实际运行的性能。
本商场管理系统数据库的分析与设计持续了两个月的时间。起初就商场的业务流程和业务数据同用户进行深入交流,了解用户的数据需求,对用户的数据需求进行分析、筛选、归纳和整理,确定数据需要求文档。然后根据数据需求文档使用PowerDesigner设计出CDM图,再使用PowerDesigner Tools 根据CDM图生成PDM图。最后,依据已设计好的PDM图使用正向工程工具安装数据库,并生成数据库定义SQL脚本。
人事管理模块的设计持续了一个月的时间。起初就商场人事管理的业务规则,分析、整理出功能需求文档。然后根据功能需求文档,使用 Rational Rose 设计出该模块的完整功能结构图。最后,根据功能结构图设计出各种窗体,并完成各功能的编码工作。
虽然,数据库与人事管理模块的设计已完成,但仍存在很多不足,需要不断地完善。数据库存在数据冗余,数据实体间的关系不是很合理。有些表的数据项不够完整。缺乏数据库优化。人事管理模块界面不够友好,显得很单调,功能不够强大。为了解决不足的方面,接下来的时间将不断优化数据库和人事管理模块外观界面。
本次文档设计提高了我的系统分析能力和编程技术。通过本次设计,我学会了使用 Rational Rose 进行系统分析,使用 PowerDesigner 设计数据库,对软件工程有了更深的理解,熟悉软件开发过程的各个主要步骤,熟练地掌握了 Visual Basic 程序设计语言。本次文档设计将为我文档后打算从事的软件开发工作奠定牢固的基础。
致谢
在本次文档设计中,我们在指导老师身上学到了很多东西。老师认真负责的工作态度,严谨的治学精神和深厚的理论水平都使我们受益匪浅。无论在学习中还是在实践中,都给予了我很大的帮助,对于我们以后的工作和学习都是一种巨大的帮助和财富,感谢老师细心而又耐心的辅导。感谢老师为我们的系统设计和范文提出的宝贵意见。 感谢同组同学的互相配合!感谢他们在设计过程中对我提出的建议,感谢他们在我对某些需求不清晰的时对我的提醒。 最后,再次感谢指导老师和同组同学对我的设计提供的帮助和支持。
参考文献
[1]白尚旺. PowerDesigner 软件工程技术[M].北京: 电子工业出版社.
[2](美)Hector Garcia-Molina等. 数据库系统全书[M].北京: 机械工业出版社.
[3](美)David Sceppa. ADO编程技术[M].北京: 清华大学出版社.
[4](英)Ian sommerville. 软件工程(原书第6版)[M].北京: 机械工业出版社
[5]苗学兰,刘瑞新,王怀峰.数据库系统原理及应用教程[M].北京: 电子工业出版社
[6]彭林,余艳.SQL Server 2000经典教程[M].北京: 人民邮电出版社.
[7]吴目诚.精彩Visual Basic 6.0 程序设计[M].北京: 科学出版社.
附录 原代码:
A、员工信息查询代码:
Private rd As New ADODB.Recordset
Private Sub Command1_Click()
MSHFlexGrid1.Clear
If rd.State = adStateOpen Then
rd.Close
End If
If Combo1.Text = "姓名" Then
rd.Open "SELECT * FROM 人事 where 姓名 = '" & Text2.Text & "'", db, adOpenStatic, adLockOptimistic
Set MSHFlexGrid1.DataSource = rd
End If
If Combo1.Text = "员工编号" Then
str1 = Text2.Text
If (IsNumeric(str1) = False) Then
MsgBox ("输入编号格式有错误")
Exit Sub
End If
rd.Open "SELECT * FROM 人事表单 where 编号 = '" & Text2.Text & "'", db, adOpenStatic, adLockOptimistic
Set MSHFlexGrid1.DataSource = rd
End If
If Combo1.Text = "所在部门" Then
rd.Open "SELECT * FROM 人事 where 部门名称 = '" & Text2.Text & "'", db, adOpenStatic, adLockOptimistic
Set MSHFlexGrid1.DataSource = rd
End If
If MSHFlexGrid1.Rows = 1 Then
MsgBox ("查无相符信息")
Exit Sub
End If
Text2.Text = ""
End Sub
B、员工信息操作及工资管理代码:
Private rd As New ADODB.Recordset
Private ra As New ADODB.Recordset
Private rb As New ADODB.Recordset
Public cname As String
Public cnum As String
Private Sub Command1_Click()
If rd.State = adStateOpen Then
rd.Close
End If
If (Text1.Text = "") Or (Text9.Text = "") Or (Text5.Text = "") Or (Text7.Text = "") Or (Combo1.Text = "") Or (Text7.Text = "") Or (Combo1.Text = "") Or (Combo2.Text = "") Or (Combo3.Text = "") Or (Combo4.Text = "") Or (Combo5.Text = "") Or (Combo6.Text = "") Or (Combo7.Text = "") Or (Combo8.Text = "") Or (Combo9.Text = "") Or (Combo10.Text = "") Then
MsgBox ("请填写所有信息")
Exit Sub
End If
str1 = Text7.Text
If (IsNumeric(str1) = False) Then
MsgBox ("输入编号格式有错误")
Exit Sub
End If
If str1 > 99999999 Or str1 < 10000000 Then
MsgBox ("输入编号格式有错误")
Exit Sub
End If
If (Combo8.Text - Combo5.Text) < 19 Then
MsgBox ("您的年龄输入有错误")
Exit Sub
End If
rd.Open "SELECT * FROM 人事 where 编号 = '" & Text7.Text & "'", db, adOpenStatic, adLockOptimistic
If rd.BOF = False Or rd.EOF = False Then
MsgBox ("此编号已存在")
Exit Sub
End If
rd.AddNew
rd("姓名") = Text1.Text
rd("性别") = Combo1.Text
rd("编号") = Text7.Text
rd("学历") = Combo4.Text
rd("部门名称") = Combo3.Text
rd("岗位") = Text9.Text
rd("工作性质") = Combo2.Text
rd("出生日期") = Combo5.Text & "-" & Combo6.Text & "-" & Combo7.Text
rd("工作时间") = Combo8.Text & "-" & Combo9.Text & "-" & Combo10.Text
rd("联系方式") = Text5.Text
rd.Update
rd.Close
Text1.Text = ""
Text5.Text = ""
Text7.Text = ""
Text9.Text = ""
End Sub
Private Sub Command2_Click()
Text1.Text = ""
Text5.Text = ""
Text7.Text = ""
Text9.Text = ""
End Sub
Private Sub Command3_Click()
Dim Y As Long
If rd.State = adStateOpen Then
rd.Close
End If
If rb.State = adStateOpen Then
rb.Close
End If
商场管理系统——数据库设计与人事管理模块(四)相关范文