大家好!我是个菜鸟,我想用VB实现一个登录功能。就是一个数据库中的表记录有“用户名”和“密码”,如何把VB界面上的文本框和“用户名”及“密码”分别链接,而且还要确定“用户名”和“密码”是一组呢?请大侠们帮帮我这个菜鸟,谢谢!

解决方案 »

  1.   

    用SQL Server做一个登录的存储过
    在VB中调用一下把参数传过去,根据返回值确定登录身份
      

  2.   

    对了,我们用的数据库是access,谁能帮帮我啊。
      

  3.   

    高手不要如此小气嘛,有意的大侠们可以发邮件到:[email protected] 
    非常希望得到你的答复!
      

  4.   

    Private Sub Cmd_ok_Click()
    Dim Msgtext As String
    Dim SQLtext As String
    Dim strPwd As String
    Dim i As IntegerSet rst = New ADODB.RecordsetIf Trim(Txt_user.Text) = "" Or Trim(Txt_pwd.Text) = "" Then
        MsgBox "用户和密码,不能为空!", vbOKOnly + vbExclamation, "警告"
        Txt_user.Text = ""
        Txt_pwd.Text = ""
        Txt_user.SetFocus
    End IfSQLtext = "select * from t_user where user_name = '" & Trim(Txt_user.Text) & "'"
    Set rst = ExecuteSQL(SQLtext, Msgtext)For i to cint(Msgtext)
    if Not rst.EOF  Then
            strPwd = md5(Trim(Txt_pwd.Text))
      If Trim(rst.Fields(1)) = Trim(Txt_user.Text) And Trim(rst.Fields(2)) = Trim _(strPwd) Then
            rst.Close
            Me.Hide
            Frm_main.Show
            grp_user = Trim(Txt_user.Text)
        Else
           MsgBox "用户或者密码错误!", vbOKOnly + vbExclamation, "警告"
           Txt_user.Text = ""
           Txt_pwd.Text = ""
           Txt_user.SetFocus
        End If
    End If
    rst.rst.MoveNext
    next iEnd Sub
    Public Function ConnectString() _
       As String
    'returns a DB ConnectString
       ConnectString = "Server=(local);Database=fin;Uid=sa;Pwd="
    End Function
    Public Function ExecuteSQL(ByVal SQL _
       As String, MsgString As String) _
       As ADODB.Recordset
    'executes SQL and returns Recordset
       Dim cnn As ADODB.Connection
       Dim rst As ADODB.Recordset
       Dim sTokens() As String
       
       On Error GoTo ExecuteSQL_Error
       
       sTokens = Split(SQL)
       Set cnn = New ADODB.Connection
       cnn.Provider = "SQLOLEDB"
       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
          'rst.MoveLast     'get RecordCount
          Set ExecuteSQL = rst
          MsgString = CStr(rst.RecordCount)
       End If
    ExecuteSQL_Exit:
       Set rst = Nothing
       Set cnn = Nothing
       Exit Function
       
    ExecuteSQL_Error:
       MsgString = "查询错误: " & _
          err.Description
       Resume ExecuteSQL_Exit
    End Function
      

  5.   

    补充  以上程序中
    grp_user 为全局变量 需要定义
    数据库连接部分来自网上  呵呵
    rst.rst.MoveNext 更正:rst.MoveNext 
    不好意思~~
      

  6.   

    谢谢!虽然我还没有学SQL,但仍然要谢谢楼上的那位大侠,谢谢!