vb程序中出现错误,改来改去都对不上。。
PrivateSubComm3_Click()recs=Adodc1.Recordset.RecordCountIfMsgBox("真的要删除["+Trim(Adodc1...
Private Sub Comm3_Click()
recs = Adodc1.Recordset.RecordCount
If MsgBox("真的要删除[" + Trim(Adodc1.Recordset.Fields("姓名")) + "]吗?", vbYesNo, "信息提示") = vbYesb Then
Adodc1.Recordset.Delete
recs = recs - 1
Adodc1.Recordset.Update
Call encomm
End If
End Sub
这个是删除一条记录的代码,但是按下去之后记录还在那里哦,实际上没删除的哦。怎么办呀?
Private Sub selcmd1_Click()
If Trim(Text2.Text) <> "" Then
If Not IsDate(Trim(Text2.Text)) Then
MsgBox "出生日期输入错误,应为yyyy-mm-dd类型", vbOKOnly, "信息提示"
Text2.SetFocus
Exit Sub
End If
End If
condstr = ""
If Trim(Text1.Text) <> "" Then
If condstr = "" Then
condstr = "姓名 like '" + Trim(Text1.Text) + "'"
Else
condstr = condstr + "and 姓名 like '" + Trim(Text1.Text) + "'"
End If
End If
If Trim(Text2.Text) <> "" Then
If condstr = "" Then
condstr = "出生日期='" + Format(Trim(Text2.Text), "yyyy-mm-dd") + "'"
Else
condstr = condstr + "and 出生日期='" + Format(Trim(Text2.Text), "yyyy-mm-dd") + "'"
End If
End If
If Trim(Text3.Text) <> "" Then
If condstr = "" Then
condstr = "通信地址 like '" + Trim(Text3.Text) + "'"
Else
condstr = condstr + "and 通信地址 like'" + Trim(Text3.Text) + "'"
End If
End If
If Opt1.Value = True Then
If condstr = "" Then
condstr = "性别='男'"
Else
condstr = condstr + "and 性别='男'"
End If
ElseIf Opt2.Value = True Then
If condstr = "" Then
condstr = "性别='女'"
Else
condstr = condstr + "and 性别='女'"
End If
End If
If condstr <> "" Then
Adodc1.RecordSource = "select * from ksb where" + condstr
Adodc1.Refresh
Else
Adodc1.RecordSource = "select * from ksb"
Adodc1.Refresh
End If
Adodc1.RecordSource = "select * from ksb"
Adodc1.Refresh
recs = Adodc1.Recordset.RecordCount
If recs = 0 Then
MsgBox "没有任何满足条件的记录", vbOKOnly, "信息提示"
End If
Call encomm
End Sub
这段就是在姓名和通信地址这一栏输入内容后就都出现“在关键字'like'附近有语法错误”和refresh的方法'iadodc'失败。而在出生日期和性别输入内容就出现“在=附近出现错误”和refresh的方法'iadodc'失败。这该怎么办啊 展开
recs = Adodc1.Recordset.RecordCount
If MsgBox("真的要删除[" + Trim(Adodc1.Recordset.Fields("姓名")) + "]吗?", vbYesNo, "信息提示") = vbYesb Then
Adodc1.Recordset.Delete
recs = recs - 1
Adodc1.Recordset.Update
Call encomm
End If
End Sub
这个是删除一条记录的代码,但是按下去之后记录还在那里哦,实际上没删除的哦。怎么办呀?
Private Sub selcmd1_Click()
If Trim(Text2.Text) <> "" Then
If Not IsDate(Trim(Text2.Text)) Then
MsgBox "出生日期输入错误,应为yyyy-mm-dd类型", vbOKOnly, "信息提示"
Text2.SetFocus
Exit Sub
End If
End If
condstr = ""
If Trim(Text1.Text) <> "" Then
If condstr = "" Then
condstr = "姓名 like '" + Trim(Text1.Text) + "'"
Else
condstr = condstr + "and 姓名 like '" + Trim(Text1.Text) + "'"
End If
End If
If Trim(Text2.Text) <> "" Then
If condstr = "" Then
condstr = "出生日期='" + Format(Trim(Text2.Text), "yyyy-mm-dd") + "'"
Else
condstr = condstr + "and 出生日期='" + Format(Trim(Text2.Text), "yyyy-mm-dd") + "'"
End If
End If
If Trim(Text3.Text) <> "" Then
If condstr = "" Then
condstr = "通信地址 like '" + Trim(Text3.Text) + "'"
Else
condstr = condstr + "and 通信地址 like'" + Trim(Text3.Text) + "'"
End If
End If
If Opt1.Value = True Then
If condstr = "" Then
condstr = "性别='男'"
Else
condstr = condstr + "and 性别='男'"
End If
ElseIf Opt2.Value = True Then
If condstr = "" Then
condstr = "性别='女'"
Else
condstr = condstr + "and 性别='女'"
End If
End If
If condstr <> "" Then
Adodc1.RecordSource = "select * from ksb where" + condstr
Adodc1.Refresh
Else
Adodc1.RecordSource = "select * from ksb"
Adodc1.Refresh
End If
Adodc1.RecordSource = "select * from ksb"
Adodc1.Refresh
recs = Adodc1.Recordset.RecordCount
If recs = 0 Then
MsgBox "没有任何满足条件的记录", vbOKOnly, "信息提示"
End If
Call encomm
End Sub
这段就是在姓名和通信地址这一栏输入内容后就都出现“在关键字'like'附近有语法错误”和refresh的方法'iadodc'失败。而在出生日期和性别输入内容就出现“在=附近出现错误”和refresh的方法'iadodc'失败。这该怎么办啊 展开
1个回答
展开全部
没有数据我没法做进一步测试,现在说说就我看来的两个错误
问题1:这个是删除一条记录的代码,但是按下去之后记录还在那里哦,实际上没删除的哦。怎么办呀?
换成Adodc1.Recordset.UpdateBatch 试试。也可能是没刷新
问题2:LIKE 的错误
condstr = condstr + "and 通信地址 like'" + Trim(Text3.Text) + "'"
这个语句LIKE跟单引号之间没有空格,我不知道是不是你粘贴问题,我猜错误的语法就在这
问题3:在=附近出现错误
与问题2类似,却空格,condstr = condstr + "and 性别='女'",前一条件和后一条件组合的时候“and”前面不带空格啊。那不就报错了吗?
问题1:这个是删除一条记录的代码,但是按下去之后记录还在那里哦,实际上没删除的哦。怎么办呀?
换成Adodc1.Recordset.UpdateBatch 试试。也可能是没刷新
问题2:LIKE 的错误
condstr = condstr + "and 通信地址 like'" + Trim(Text3.Text) + "'"
这个语句LIKE跟单引号之间没有空格,我不知道是不是你粘贴问题,我猜错误的语法就在这
问题3:在=附近出现错误
与问题2类似,却空格,condstr = condstr + "and 性别='女'",前一条件和后一条件组合的时候“and”前面不带空格啊。那不就报错了吗?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询