VB Combo连接Access数据库问题

来源:百度知道 编辑:UC知道 时间:2024/05/26 03:02:51
Dim rs As New ADODB.Recordset
Dim rs2 As New ADODB.Recordset
Dim pass, User As String
Private Sub Form_Load()
User = "Select * From 身份验证"
rs.Open User, conn, adOpenDynamic, adLockOptimistic
Do While Not rs.EOF
Combo1.AddItem (rs("User"))
rs.MoveNext
Loop
rs.Close

Private Sub cmdOK_Click()
If Passtxt.Text <> "" Then '密码输入文本框
pass = "Select * From 身份验证 where user=" & Combo1.Text
rs2.Open pass, conn, adOpenForwardOnly, adLockReadOnly
If rs2.EOF <> True Then
If rs2("Password") = Trim(Passtxt.Text) Then
Form2.Show
rs2.Close
end if
end if
end if
End Sub
这里用Combo1.text报错,实时错误'2147217904(80040e10)'
至少有一个参数没有被指定值。
我曾尝试用ListIndex的索引号查找用户名对应密码可以成功,但是由于用ListIndex查找对直接输入进去的文本无效,只能执行Click事件后才能获得ListIndex的索引,不是很方便,所以请各位高手指点一下为什么直接用Combo1.text查找就出现错误?
有能帮助解答的,我还

pass = "Select * From 身份验证 where user='" & Combo1.Text & "'"

pass = "Select * From 身份验证 where user='" & Combo1.Text & "'"
user不是数字类型吧,所以值要用''框起来。

sql语句中where后面的字段名的值要用''(单引号)括起来,不然肯定会报错。
pass = "Select * From 身份验证 where user='" & Combo1.Text & "'"