Access 我如何硬编码用户名和密码

Access How do i hard code in a username and password

我不是编码员,但我喜欢修补。

我有一个访问数据库和一个登录屏幕,但我想将高级用户名和密码硬编码到实际代码中。用户名将是“Developer”,密码最初将是“One”

这就是我目前正在做的事情。如有任何帮助,我们将不胜感激。

Private Sub cmdLogin_Click()
On Error GoTo cmdLogin_ClickErr
    Dim rs As Recordset
    Set rs = CurrentDb.OpenRecordset("Select * From TLKPeople Where Username =  '" & Me.txtUserName & "' And Password = '" & Me.txtPassword & "'")
    If Not rs.EOF Then
        TempVars.Add "UserName", rs!UserName.Value
        TempVars.Add "Password", rs!Password.Value
        TempVars.Add "Admin", rs!Admin.Value
        TempVars.Add "ReadOnly", rs!ReadOnly.Value
        TempVars.Add "StdUser", rs!STDUser.Value
          If Nz(TempVars!UserName, 0) = "Developer" Then
             DoCmd.ShowToolbar "Ribbon", acToolbarYes
           End If
        DoCmd.Close acForm, Me.Name
        DoCmd.OpenForm "FRMMenuMain"
        DoEvents

    Else
        MsgBox "Your login as failed!", vbOKOnly, "Login Failed"
    End If
    rs.Close
    Set rs = Nothing


Exit Sub

cmdLogin_ClickErr:
    MsgBox ("Err: " & Err.Number & " " & Err.Description)
End Sub

基于此,这至少应该让您入门。您可能需要稍微调整一下。

Private Sub cmdLogin_Click()
    On Error GoTo cmdLogin_ClickErr
    
    If Len(Me.txtUserName) = 0 And Len(Me.txtPassword) = 0 Then
        TempVars.Add "UserName", "Developer"
        TempVars.Add "Password", "One"
    Else
      Dim rs As Recordset
      Set rs = CurrentDb.OpenRecordset("SELECT * FROM TLKPeople WHERE Username='" & Me.txtUserName & "' And Password='" & Me.txtPassword & "'")
      If Not rs.EOF Then
          TempVars.Add "UserName", rs!UserName.Value
          TempVars.Add "Password", rs!Password.Value
          TempVars.Add "Admin", rs!Admin.Value
          TempVars.Add "ReadOnly", rs!ReadOnly.Value
          TempVars.Add "StdUser", rs!STDUser.Value
      Else
          MsgBox "Your login as failed!", vbOKOnly, "Login Failed"
          Exit Sub
      End If
      rs.Close
      Set rs = Nothing
    End If
    
    If Nz(TempVars!UserName, 0) = "Developer" Then
         DoCmd.ShowToolbar "Ribbon", acToolbarYes
    End If
    
    DoCmd.Close acForm, Me.Name
    DoCmd.OpenForm "FRMMenuMain"
    DoEvents

Exit Sub

cmdLogin_ClickErr:
    MsgBox ("Err: " & Err.Number & " " & Err.Description)
End Sub

注意:您可能想使用 Or 代替:

If Len(Me.txtUserName) = 0 Or Len(Me.txtPassword) = 0 Then