vb连接sql数据库,用文本框里的字符串做if判断,取不出值是怎么回事?会的小伙伴们能帮下忙吗

代码如下:DimobjCnAsConnection,objRSAsRecordsetPrivateSubForm_Load()OnErrorGoToDealErrorDi... 代码如下:

Dim objCn As Connection, objRS As Recordset

Private Sub Form_Load()
On Error GoTo DealError
Dim objCn As New Connection
With objCn
.Provider = "SQLOLEDB"
.ConnectionString = "User ID=sa;PWD=****;Data Source=(LOCAL);" & _
"Initial Catalog=salarysystem"
.Open
End With
Set objRS = New Recordset
Set objRS.ActiveConnection = objCn
objRS.CursorLocation = adUseClient
objRS.CursorType = adOpenDynamic
objRS.LockType = adLockBatchOptimistic
strsql = "SELECT * FROM 员工信息"
objRS.Open strsql
ShowCurrentRecord
Exit Sub
DealError:
msg = "连接数据库执行出错,错误信息如下:" & vbCrLf & Err.Description
Showerror msg
End Sub
Private Sub ShowCurrentRecord()
On Error GoTo DealError
txtTitle = objRS!职称
If txtTitle.Text = "中级" Then
txtTest.Text = txtTitle.Text
End If
exit Sub
DealError:
msg = "显示当前信息执行出错,错误信息如下:" & vbCrLf & Err.Description
Showerror msg
End Sub
错误为:txtTitle文本框里的内容为”中级”,但是txtTest文本框里的内容无值
展开
 我来答
syx54
2019-01-12 · TA获得超过7378个赞
知道大有可为答主
回答量:6567
采纳率:83%
帮助的人:2670万
展开全部
我估计你数据库里的“中级”前后或有空格,所以你的txtTitle.Text 里的 "中级"前后也有空格的可能,眼睛看不出来,你不妨修改一下如下试试:
If Trim(txtTitle.Text) = "中级" Then
txtTest.Text = txtTitle.Text
End If
对数据库输入或编辑的代码做适当修改,保证输入的职称没有多余的符号!其实,职称之类的信息应该采用选择而不采用手工输入。
nkhawk
互联网爱好者

2019-01-12 · 互联网情报员
知道小有建树答主
回答量:1324
采纳率:97%
帮助的人:60.6万
展开全部
打断点进行调试,否则是学不好编程的
追问
调试了啊,程序没有走if语句里的内容
追答
字符比较要用 StrComp(string1, string2[, compare])
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式