请教一个vb6 sql语法错的问题
Call OpenCNN(Cnn)
Dim temp As String
Dim temp1 As String
temp1 = Text2.Text
temp = Combo1.Text
SQL = "select password from name1 where username ='" & temp & "'"
'上面这一行sql语句运行得很正常
RSt.Open SQL, Cnn, adOpenStatic, adLockOptimistic
er = 1
If Text1.Text = RSt!Password Then
If Text2.Text = Text3.Text Then
RSt.Close
Set RSt = Nothing
SQL = "update name1 set password='" & temp1 & "' where username ='" & temp & "'"
Cnn.Execute SQL '这一行总是报错,说sql语法错误,我中断的时候看 username=李小平 李小平后面总有一个上引号(")不知道怎么回事.就成这个样子 username=李小平""
Else
MsgBox "两次输入的密码不一致~!", 16, "错误"
End If
Else
If er = 3 Then
er = er + 1
MsgBox "修改密码三次错误,强制退出系统~!", 16, "错误"
Else
MsgBox "原密码输入错误", 16, "错误"
End If
End If
RSt.Close
Set RSt = Nothing
Cnn.Close
Set Cnn = Nothing
[解决办法]
SQL = "update name1 set password='" & temp1 & "' where username ='" & trim(temp) & " '"
注意在“‘”前加一空格,试试。
[解决办法]
SQL = "update name1 set password='" & temp1 & "' where username ='" & temp & "'"
Cnn.Execute SQL '这一行总是报错,说sql语法错误,我中断的时候看 username=李小平 李小平后面总有一个上引号(")不知道怎么回事.就成这个样子 username=李小平""
从表达上看,没有错,调式中,sql应该是这样的(sql语句赋值执行后,在调式窗口中 ?sql 进行检查)
update name1 set password='abc' where username ='李小平'
说到 username=李小平"" 不应该出现这种情况,username='李小平""' 倒是有可能,如果是这样,检查Temp的值