VB人事管理系统设计代码及论文 第8页

VB人事管理系统设计代码及论文 第8页
6  系统实施
6.1编写并测试VB代码
6.1.1数据的访问
 VisualBasic6.0提供了几种访问数据库的方式,可以归纳为两类:使用数据控件绑定和用SQL直接对数据库进行访问。使用数据控件时,将Adodc拖到数据窗体上,设置其Connec—tionString属性,绑定数据源,读取并显示数据记录。
在数据库的操作过程中,考虑到操作数据库时如果利用数据绑定,则会锁定表记录,使得表的访问为独占式,而如果两个终端同时访问这个表,则容易造成死锁。因此用SQL直接进
行对数据库的访问是比较适合的,即使偶尔产生并发操作,对数据库的修改不成功,也可以继续保存。同时由于考虑到数据库中的数据属于动态的、变化的,因此,在数据库的操纵过程中,大量使用了SQL语句进行对数据库的操作。具体说,包括数据的插人、修改、删除和查询。例如在系统管理模块中,相关操作的程序代码如下:
●数据插入
txtSQL = "insert into tbUser( Userld, UserPassword, UserKind)"
txtSQL : txtSQL + "values('" + Trim(txtUser. Text) + "','"
txtSQL = txtSQL + Trim(txtPassword. Text) + "','" + Trim(cboUser. Text) + "')"
results = ExecuteSQL(txtSQL,rstUser, True)
MsgBox "添加成功!", vbOKOnly + vbExclamation,"警告"
●数据修改
txtSQL --"update tbUser set Userld = '" + Trim(txtUser. Text)
txtSQL = txtSQL + "',UserPassword = '" + Trim(txtPassword. Text)
txtSQL = txtSQL + "',UserKind = '" + Trim(cboUser. Text)
txtSQL = txtSQL + "' where Userld='" + Trim(txtUser.Text) + "'"
results = ExecuteSQL(txtSQL,rstUser, True)
MsgBox "修改成功!",vbOKOnly + vbExclamation,"警告"
●数据删除
txtSQL = "delete from tbUser where Userld= '" + Trim(txtUser. Text) + "'"
results = ExecuteSQL(txtSQL,rstUser, True)
MsgBox "删除成功!", vbOKOnly + vbExclamation,"警告"
●数据查询
txtSQL = "select Userld as 用户名,UserPassword as 用户密码"UserKind as 用户类型"
txtSQL = txtSQL + "from tbUser order by Userld"
result = viewData(txtSQL,dgUser)
6.1.2使用Recordset.count
检索数据库后,需要将检索结果添加到Combobox或者Datagrid表格或其他控件中时,如果检索结果为0,那么自动使用Recordset中的数据rstcbo.Fields(i)时会出现数据库错误,导致程序不能正常运行。因此,在使用rstcbo.Fields(i)之前,先要利用Recordset.cout判断结果记录集中的记录数,如果为0,则不进行任何赋值操作。如在系统公共文件中,为ComboBox赋值函数时:
    res = ExecuteSQL(txt,rstcbo, False)
If rstcbo.RecordCount < > 0 Then
   For i = 0 To rstcbo. RecordCount - 1
     cbo.Addhem ( rstcbo. Fields( 1 ) )
     cbo.ItemData(cbo.Newlndex) = rstcbo.Fields(O)
      rstcbo. MoveNext
    Next
cboData=True
    Else
    cboData=False
    End lf
6.1.3 在当前路径下加载窗体背景图片
 strpath="\ren.jpg" '使用的图片名称人.jpg,位于路径下
 frmMain.Picture = LoadPicture(App.path & strpath)
6.1.4 数据校验
数据的正确性是整个系统运行的基本保障,故在程序实现过程中对数据完整性应该加以着重控制。在接受数据输入,更新数据库的场合,需要在更新数据库之前,对数据类型、数据长度进行检验。如用以下代码对输人数据是否为null进行校验:
PublicFunctiontxtlsNtfil(txtAs TextBox)AsBoolean  
  If  Trim(txt.Text)=" "Then
    txt IsNull=True
    txt.SetFocus
    txt. BackColor=BLUE
  Else
   Txtls Null=False
  End If
  End Function
6.1.5显示当前记录
本系统中利用TextBox来更新数据,重要的一点就是可以随意选择表格中需要修改的记录而不需要复杂的输入。当点击Datagrid表格中的任意记录时,各个TextBox要显示该记录的对应信息,可以使用Datagrid的RowColChang事件完成此功能。使用方式如下:
 Private Sub dgUser_RowColChange(LastRow As Variant By Val LastCol As Integer)
   If result<>0 Then
    Txt User.Text=dgUser.Columns(0).Text
    Txt Password.Text=dgUser.Columns(1).Text
    Cbo User.Text=dgUser.Columns(2).Text
   End If
   End Sub

7  结束语
7.1关于我的程序
7.1.1运行维护
经过测试,该系统运行稳定,在使用和维护中应该注意以下几个问题:
  1)定期备份数据库,以免丢失数据。
  2)定期清理数据库中的无效数据,以提高运行效率。
  3)对软件及运行环境进行日常维护。
7.1.2系统的改进与提高
本系统在信息表述上不够完备,通用性不强,比如权限的设置不够灵活,一些模块的信息不够详细,提供的报表有限二下一步可以在各个界面上进一步添加所需要的字段;在熟悉系统模块的设计后,增加一些模块,扩充系统的功能。
7.2感想
        从毕业设计开始到现在毕业设计基本结束的整个过程中,觉得自己充实了很多。现在毕业设计总算是基本上完成,虽然觉得有点辛苦,但是确很充实,而且小有成就感 。 这次毕业设计,也让我认识到了一个道理:再难的东西,在难的程序。只要自己努力,耐心的分析,查资料或请问别人,最后总会解决。等你解决完了回头来看就会发现原本认为很深奥的东西也在你的掌握之中。
7.3致谢
感谢张思亮老师和赵硕老师对我的指导和教诲。感谢我的舍友。通过我们的不断讨论使我学到了很多东西。


参考文献
[1]黄明、梁旭、冯瑞芳,《毕业设计知指导及案例剖析》,2008年4月,机械工业出版社
[2]罗朝盛,《Visual Basic 6.0程序设计实践指导》,2007年5月,浙江科学技术出版社
[3]刘瑞新、李树东,《Visual Basic 程序设计教程》,2006年7月,电子工业出版社
[4] 郑阿奇、刘启芬、顾韵华,《SQL Server应用教程》,2008年12月,人民邮电出版社
[5] 徐守祥,《数据库应用技术——SQL Server》,2008年11月,人民邮电出版社

上一页  [1] [2] [3] [4] [5] [6] [7] [8] 

Copyright © 2007-2012 www.chuibin.com 六维论文网 版权所有