Office中国论坛/Access中国论坛
标题:
[求助]关于ADO的问题
[打印本页]
作者:
cring
时间:
2005-3-14 21:23
标题:
[求助]关于ADO的问题
今天做了个用户登陆的窗体,并写了代码如下:
Private Sub OK_CMD_Click()
Dim conn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim strSQL As String
Set conn = CurrentProject.Connection '打开数据库
strSQL = "select * from userform" '设置查询的数据表
rs.Open strSQL, conn, adOpenKeyset, adLockPessimistic, 1 '记录集
Set txtName = rs.Fields("username") '引用username字段
Set Userpwd = rs.Fields("password") '引用password字段
If Len(Nz(Me!NameCombo)) = 0 And Len(Nz(Me!txtPwd)) = 0 Then
MsgBox "请选择用户名和输入密码!", vbCritical, "错误"
Me!NameCombo.SetFocus '判断用户名和密码是否用误,如果有误,则弹出警告框
ElseIf Len(Nz(Me!NameCombo)) = 0 Then
MsgBox "请选择用户名!", vbCritical, "错误" '用户名有误
Me!NameCombo.SetFocus
ElseIf Len(Nz(Me!txtPwd)) = 0 Then
MsgBox "请输入密码!", vbCritical, "错误" '密码有误
Me!txtPwd.SetFocus
Else
If Me!NameCombo = txtName Then
If Me!txtPwd = Userpwd Then
MsgBox "登陆成功!", vbInformation, "成功" '登陆成功时打开
Else
MsgBox "密码有误!请重新输入!", vbCritical, "错误"
Me!txtPwd.SetFocus
End If
Else
MsgBox "用户名有误!请重新输入!", vbCritical, "错误"
End If
rs.Close
conn.Close
Set rs = Nothing
Set conn = Nothing
End If
End Sub
userform中有两个用户名:第一个是ABC,密码为1234,第二个为ABCD,密码为123456,当用第一个用户名时可以登陆成功,而在用第二个用户名登陆时却总是说用户错误。也就是说,在用ADO建立记录集时只取到了表中的第一个记录,请问各位高手,这是什么原因,是不是代码有问题,还是其他的原因呢?
作者:
CHENZHIRONG
时间:
2005-3-14 21:34
记录集中有所有的记录,在第一条记录中查不到,应该rs.movenext,查第二条,一直到记录末尾rs.EOF.
作者:
情比金坚
时间:
2005-3-14 23:00
不要从代码上找原因,先看看你的思路是否明确了?对照流程图看看你的问题在哪?[attach]9404[/attach]
作者:
cring
时间:
2005-3-15 02:10
明白了,谢谢。
欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/)
Powered by Discuz! X3.3