vb 查询数据库时出现“标准表达式中数据类型不匹配”

来源:百度知道 编辑:UC知道 时间:2024/05/23 20:34:25
Private Sub Command3_Click()
If Text1.Text <> "" Then
Adodc1.RecordSource = "select* from 库存表 where 货物编号=" & Text1.Text 'text1.text 是数值型
Adodc1.Refresh
Adodc1.Recordset.Fields("货物编号") = Text1.Text
Adodc1.Recordset.Fields("货物名称") = Text2.Text
Adodc1.Recordset.Fields("数量") = Text3.Text
Adodc1.Recordset.Fields("单位") = Text4.Text
Adodc1.Recordset.Update
Else
MsgBox "货物编号不能为空!", vbInformation + vbOKOnly, "错误提示"
End If

End Sub
这段是编辑数据库
运行时它说标准表达式中数据类型不匹配
怎么回事? 该怎么改
是不是因为是text1.text是数值型 ?

首先你要搞清楚你的数据库字段的类型, 比如你的“数量” 明显不是字符类型的, 所以你用text3.text出来的字符串要强制转换。 Adodc1.Recordset.Fields("数量") =cint(text3.text) 来获得。 其他类似。

你点击中断以后光标停在哪一行嘛,停在哪一行就表明你哪一行的数据类型有问题。多半是输入了空值。如果保证数据没有问题的情况下仍然要录入,你可以在if前面加一行on error resume next

是的!