先整理一下,否则容易逻辑混乱 Private Sub Command1_Click() Static interr As Integer Dim cnn As ADODB.Connection Dim rs As ADODB.Recordset Set cnn = New ADODB.Connection Set rs = New ADODB.Recordset cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\陆诗琴01.mdb" Dim strUser As String, strPass As String, strSQL As String strUser = Trim$(Text1.Text) strPass = Trim$(Text2.Text) strSQL = "select * from 密码表 where 用户名='" & strUser & "'AND 密码='" & strPass & "'" rs.Open strSQL, cnn, 2, 3 If rs.EOF And rs.BOF Then interr = interr + 1 If interr >= 3 Then MsgBox "对不起,无权使用本系统。", vbExclamation, "提示" End Else MsgBox "用户名或密码错误,请重新输入!", vbExclamation, "提示" Text1.SetFocus End If Else If rs.Fields("密码") = strPass Then Select Case rs.Fields("级别") Case 0 If Combo1.Text = "管理员" Then ' MsgBox "欢迎登录,管理员", vbExclamation, "提示" 系统界面.Show Else MsgBox "您无管理员权限!", vbOKOnly + vbCritical, "提示" End If Case 1 If Combo1.Text = "普通民警" Then ' MsgBox "欢迎登录,POLICE", vbExclamation, "提示" 查询界面.Show End If Case Else If Combo1.Text = "请选择" Then MsgBox "请选择级别", vbExclamation, "提示" End If End Select End If End If End Sub
建议陆诗琴同学把Combo1去掉 Private Sub Command1_Click() Static interr As Integer Dim cnn As ADODB.Connection Dim rs As ADODB.Recordset Set cnn = New ADODB.Connection Set rs = New ADODB.Recordset cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\陆诗琴01.mdb" Dim strUser As String, strPass As String, strSQL As String strUser = Trim$(Text1.Text) strPass = Trim$(Text2.Text) strSQL = "select * from 密码表 where 用户名='" & strUser & "'AND 密码='" & strPass & "'" rs.Open strSQL, cnn, 2, 3 If rs.EOF And rs.BOF Then interr = interr + 1 If interr >= 3 Then MsgBox "对不起,无权使用本系统。", vbExclamation, "提示" End Else MsgBox "用户名或密码错误,请重新输入!", vbExclamation, "提示" Text1.SetFocus Exit Sub End If Else If rs.Fields("级别") = 0 Then 系统界面.Show If rs.Fields("级别") = 1 Then 查询界面.Showw End If End Sub
Private Sub Command1_Click()
Static interr As Integer
Dim cnn As ADODB.Connection
Dim rs As ADODB.Recordset
Set cnn = New ADODB.Connection
Set rs = New ADODB.Recordset
cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\陆诗琴01.mdb"
Dim strUser As String, strPass As String, strSQL As String
strUser = Trim$(Text1.Text)
strPass = Trim$(Text2.Text)
strSQL = "select * from 密码表 where 用户名='" & strUser & "'AND 密码='" & strPass & "'"
rs.Open strSQL, cnn, 2, 3
If rs.EOF And rs.BOF Then
interr = interr + 1
If interr >= 3 Then
MsgBox "对不起,无权使用本系统。", vbExclamation, "提示"
End
Else
MsgBox "用户名或密码错误,请重新输入!", vbExclamation, "提示"
Text1.SetFocus
End If
Else
If rs.Fields("密码") = strPass Then
Select Case rs.Fields("级别")
Case 0
If Combo1.Text = "管理员" Then
' MsgBox "欢迎登录,管理员", vbExclamation, "提示"
系统界面.Show
Else
MsgBox "您无管理员权限!", vbOKOnly + vbCritical, "提示"
End If
Case 1
If Combo1.Text = "普通民警" Then
' MsgBox "欢迎登录,POLICE", vbExclamation, "提示"
查询界面.Show
End If
Case Else
If Combo1.Text = "请选择" Then
MsgBox "请选择级别", vbExclamation, "提示"
End If
End Select
End If
End If
End Sub
Private Sub Command1_Click()
Static interr As Integer
Dim cnn As ADODB.Connection
Dim rs As ADODB.Recordset
Set cnn = New ADODB.Connection
Set rs = New ADODB.Recordset
cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\陆诗琴01.mdb"
Dim strUser As String, strPass As String, strSQL As String
strUser = Trim$(Text1.Text)
strPass = Trim$(Text2.Text)
strSQL = "select * from 密码表 where 用户名='" & strUser & "'AND 密码='" & strPass & "'"
rs.Open strSQL, cnn, 2, 3
If rs.EOF And rs.BOF Then
interr = interr + 1
If interr >= 3 Then
MsgBox "对不起,无权使用本系统。", vbExclamation, "提示"
End
Else
MsgBox "用户名或密码错误,请重新输入!", vbExclamation, "提示"
Text1.SetFocus
Exit Sub
End If
Else
If rs.Fields("级别") = 0 Then 系统界面.Show
If rs.Fields("级别") = 1 Then 查询界面.Showw
End If
End Sub
但是今天看的时候 总是弹出 至少有一个参数未被指定
然后调试指 rs.Open strSQL, cnn, 2, 3 这一句
是怎么回事啊
纠结了半天 还是不知道怎么了 貌似没错啊
求解啊
If rs.Fields("级别") = 1 Then 查询界面.Show
这样 是不是前面的strSQL = "select * from 密码表 where 用户名='" & strUser & "'AND 密码='" & strPass & "'"
要改成
strSQL = "select * from 密码表 where 用户名='" & strUser & "'AND 密码='" & strPass & "' and 级别='"strjibie"'"
strSQL = "select * from 密码表 where 用户名='" & strUser & "'AND 密码='" & strPass & "'"
strSQL = "select * from 密码表 where 用户名='" & strUser & "' AND 密码='" & strPass & "'"