在用vb编写sql语句时遇到一些问题,帮忙解决一下

PrivateSubCommand1_Click()DimrsAsNewADODB.RecordsetDimsql1AsStringIfTrim(Text1.Text)=... Private Sub Command1_Click()
Dim rs As New ADODB.Recordset
Dim sql1 As String

If Trim(Text1.Text) = "" Then
MsgBox "用户名不能为空,请重新输入!", , ""
Text1.SetFocus
Else
sql1 = " select * from 用户信息表 where 用户名称='" & Trim(Text1.Text) & " 'and 用户类型 ='" & Combo1.ListIndex & " ' "
Set rs = ExecuteSQL(sql1)
If rs.EOF = True Then
MsgBox "没有此用户,请重新输入!", vbOKOnly + vbExclamation, ""
Text1.Text = ""
Text1.SetFocus
Else

If Trim(rs.Fields(2)) = Trim(Text2.Text) Then
Me.Hide
If Combo1.Text = "用户" Then

用户个人中心.Show

Else
管理中心.Show
End If

Else
MsgBox "密码不正确,请重新输入!", vbOKOnly + vbExclamation, ""
Text2.Text = ""
Text2.SetFocus
End If
End If
End If
cnt = cnt + 1
If cnt = 3 Then
Unload Me
End If
End Sub

Private Sub Command2_Click()
Unload Me
End Sub

Private Sub Label8_Click()
用户注册.Show
End Sub
总是说用户名不对,很纳闷啊!
我的用户信息表为(用户编号,用户名称,用户密码,用户类型)
展开
 我来答
pancanming
2012-05-23
知道答主
回答量:4
采纳率:0%
帮助的人:3.2万
展开全部
先把断点打在
Set rs = ExecuteSQL(sql1) 这里,
这个时候能看到sql1的内容,将此内容直接到数据库工具上执行一下。
看看到底是SQL文错,还是没有数据。
估计是SQL文错了。。。
1。双引号和单引号之间最好不要有空格,会导致检索条件的内容也有空格。
2。and前面加个空格。
xujinzi123
2012-05-22 · TA获得超过424个赞
知道小有建树答主
回答量:756
采纳率:68%
帮助的人:408万
展开全部
第一 数据库表用 中文表名 字段 很不好的习惯,当然VB我没学过,
语句没有错误,感觉还是字段什么又错误。
不知道VB 可不不可以单步调试的,看看到哪里出错吧,
我写程序 找不到错误的时候,一般都是用注释把一些代码注释掉
然后比如 加个msgbox 看看能不 能执行到 哪一句~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友39b91c2fb
2012-05-23 · TA获得超过518个赞
知道小有建树答主
回答量:991
采纳率:0%
帮助的人:674万
展开全部
先检查数据库里面是不是的确有数据了
另外 判断一个数据不存在 最好不要单纯的用 rs.eof 因为一个记录集一旦遍历了一遍,指针也会指到 .eof 上面的。 要用 rs.eof and rs.bof 来判断才安全。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式