如何解决MS Access登录区分大小写?

问题描述 投票:-2回答:1

我分享了我在MS Access数据库登录表单中使用的代码。

任何人都可以帮我解决区分大小写的问题吗?

Private Sub Command1_Click() 
    Dim UserLevel As Integer 
    Dim USER_NAME As String 
    Dim TemLoginID As String

    If IsNull(Me.LOGINID) Then
        MsgBox "Please enter your login ID", vbInformation, "Login Id is required."
        Me.LOGINID.SetFocus 
    ElseIf IsNull(Me.PASSWORD) Then
        MsgBox "Please enter your password", vbInformation, "Password Id is required."
        Me.PASSWORD.SetFocus 
    Else
        If (IsNull(DLookup("USER_NAME", "USER", "USER_ID = '" & Me.LOGINID.Value & "'"))) Or _
        (IsNull(DLookup("PASSWORD", "USER", "PASSWORD = '" & Me.PASSWORD.Value & "'"))) Then
            MsgBox "Incorrect ID or Password." 
        Else
            TemLoginID = Me.LOGINID.Value
            USER_NAME = DLookup("USER_NAME", "USER", "USER_ID = '" & Me.LOGINID.Value & "'")
            UserLevel = DLookup("DIGINATION", "USER", "USER_ID = '" & Me.LOGINID.Value & "'")
            DoCmd.Close
            If UserLevel = 1 Then
                MsgBox "Welcome to our TravelSoft! You are login as a Admin."
                DoCmd.OpenForm "DESHBOARD"
                Forms![DESHBOARD]![LOGINID] = TemLoginID
                Forms![DESHBOARD]![USER] = USER_NAME    
            Else
                If UserLevel = 2 Then
                    MsgBox "Welcome to our TravelSoft! You are login as a Manager."
                    DoCmd.OpenForm "DESHBOARD"
                    Forms![DESHBOARD]![LOGINID] = TemLoginID
                    Forms![DESHBOARD]!Reissue.Enabled = False
                    Forms![DESHBOARD]!void.Enabled = False
                    Forms![DESHBOARD]!adm.Enabled = False
                    Forms![DESHBOARD]!particular.Enabled = False
                    Forms![DESHBOARD]!userid.Enabled = False
                    Forms![DESHBOARD]!Profile.Enabled = False
                    Forms![DESHBOARD]!AGENT.Enabled = False
                    Forms![DESHBOARD]![USER] = USER_NAME
                Else
                    If UserLevel = 3 Then
                        MsgBox "Welcome to our TravelSoft! You are login as a Accounts."
                        DoCmd.OpenForm "DESHBOARD"
                        Forms![DESHBOARD]![LOGINID] = TemLoginID
                        Forms![DESHBOARD]!Reissue.Enabled = False
                        Forms![DESHBOARD]!void.Enabled = False
                        Forms![DESHBOARD]!adm.Enabled = False
                        Forms![DESHBOARD]!particular.Enabled = False
                        Forms![DESHBOARD]!userid.Enabled = False
                        Forms![DESHBOARD]!Profile.Enabled = False
                        Forms![DESHBOARD]!AGENT.Enabled = False
                        Forms![DESHBOARD]!reissue_confirm.Enabled = False
                        Forms![DESHBOARD]!void_confirm.Enabled = False
                        Forms![DESHBOARD]!adm_confirm.Enabled = False
                        Forms![DESHBOARD]!Passenger_information.Enabled = False
                        Forms![DESHBOARD]!ticket_confirm.Enabled = False
                        Forms![DESHBOARD]![USER] = USER_NAME
                    Else
                        MsgBox "Welcome to our TravelSoft! You are login as a User."
                        DoCmd.OpenForm "DESHBOARD"
                        Forms![DESHBOARD]![LOGINID] = TemLoginID
                        Forms![DESHBOARD]!reissue_confirm.Enabled = False
                        Forms![DESHBOARD]!void_confirm.Enabled = False
                        Forms![DESHBOARD]!adm_confirm.Enabled = False
                        Forms![DESHBOARD]!ticket_confirm.Enabled = False
                        Forms![DESHBOARD]!Profile.Enabled = False
                        Forms![DESHBOARD]!AGENT.Enabled = False
                        Forms![DESHBOARD]!userid.Enabled = False
                        Forms![DESHBOARD]![USER] = USER_NAME
                    End If
                End If
            End If
        End If 
    End If
End Sub
ms-access access-vba
1个回答
0
投票

你可以使用StrComp:

DLookup("USER_NAME", "USER", "StrComp(USER_ID, '" & Me.LOGINID.Value & "', " & vbBinaryCompare & ") = 0")
© www.soinside.com 2019 - 2024. All rights reserved.