VB超市库存管理系统的设计与实现+文献综述(14)_毕业论文

毕业论文移动版

毕业论文 > 计算机论文 >

VB超市库存管理系统的设计与实现+文献综述(14)


   cnn.Open ConnectString
   If InStr("INSERT,DELETE,UPDATE", UCase$(sTokens(0))) Then
      cnn.Execute SQL
      MsgString = sTokens(0) & " query successful"
   Else
      Set rst = New ADODB.Recordset
      rst.Open Trim$(SQL), cnn, adOpenKeyset, adLockOptimistic
      Set ExecuteSQL = rst
      MsgString = "查询到" & rst.RecordCount & " 条记录 "
   End If
ExecuteSQL_Exit:
   Set rst = Nothing
   Set cnn = Nothing
   Exit Function
ExecuteSQL_Error:
   MsgString = "查询错误: " & Err.Description
   Resume ExecuteSQL_Exit
End Function
ExecuteSQL函数有两个参数:SQL和MsgString。其中SQL用来存放需要执行的SQL语句,MsgString用来返回执行的提示信息。而在VB中不允许直接访问数据库中的表,只能通过记录集对象(Recordset)对其进行浏览和操作。
在ExecuteSQL函数中使用了ConnectString函数,这个函数用来链接数据库的,代码如下:
Public Function ConnectString() As String
   Dim strAppPath As String
   strAppPath = App.Path
   If Right(strAppPath, 1) <> "\" Then
       strAppPath = strAppPath & "\"
   End If
   strAppPath = strAppPath & "Data\cskc.mdb"
   ConnectString = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=" & strAppPath & ";UID=;PWD="
End Function
另外系统运行时,会先显示系统封面,然后需要对用户进行判断。如果登录者是授权用户,则允许进入系统,否则将停止程序的执行。这些都需要在系统运行的最初进行,因此将代码放在系统启动模块中,代码如下:
Sub Main()
    Dim fInit As New frmInit
    fInit.Show vbModal
    If fInit.COVER Then
        Dim fLogin As New frmLogin
        fLogin.Show vbModal
        If Not fLogin.OK Then
            End
        End If
        Unload fLogin
        Set fMainForm = New frmMain
        fMainForm.Show
    End If
End Sub
3、测试结果
图5-1 登录封面效果图
(二)登录模块
1、模块功能
系统显示了登录封面以后需要对用户进行判断,登录模块就是用来判断用户是否为授权用户,判断依据就是数据库中已有的用户信息。
2、模块界面
登录模块界面比较简洁,给用户提供一个输入用户名和密码的平台,如图5-2所示。
 
图5-2 登录界面
3、主要代码分析
txtSQL = "select * from 用户表 where UserID = '" & txtUserName.Text & "'"
    Set mrc = ExecuteSQL(txtSQL, MsgText)
    If mrc.EOF = True Then
        MsgBox "没有这个用户,请重新输入用户名!", vbOKOnly + vbExclamation, "警告"
        txtUserName.SetFocus
    Else
        If Trim(mrc.Fields("UserPWD")) = Trim(txtPassword.Text) Then (责任编辑:qin)