我分享了我在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
你可以使用StrComp:
DLookup("USER_NAME", "USER", "StrComp(USER_ID, '" & Me.LOGINID.Value & "', " & vbBinaryCompare & ") = 0")