VB中操作ACCESS数据库中的[数据类型不匹配]问题

在VB中,操作ACCESS数据库中,我的数据表其中的"自动编号"这个字段的值怎么查询,因为我在查询中碰到的是"标准表达式中数据类型不匹配"在我的数据表中,自动编号这个类型... 在VB中,操作ACCESS数据库中,我的数据表其中的"自动编号"这个字段的值怎么查询,因为我在查询中碰到的是"标准表达式中数据类型不匹配"
在我的数据表中,自动编号这个类型应当为long

dim TelIDNum as long
'原本这个变量是一个公有变量,在其它地方赋值过的。
Dim DBstr As String
Dim ChgUser As New adodb.Recordset

DBstr = "select * from TelUser where TelID='" & TelIDNum & "'"
'DBstr = "select * from teluser where telnum='" & txtNum.Text & "'"
'第二个DBSTR就是正确可行的表达式,能查到结果
ChgUser.Open DBstr, DBCnn, adOpenStatic, adLockOptimistic ChgUser.MoveFirst

'在运行的时候,这句就不对,提示说《标准表达式中数据类型不匹配》

我试过把DBSTR改成如下均不可
dim TelIDNum as integer
dim TelIDNum as long
dim TelIDNum as single
dim TelIDNum as double
dim TelIDNum as variant

这五种变量的数据类型都不匹配,请问如何解决这一问题.
请高手指导,谢谢.
其实我查询的TelIDNum这个变量对应ACCESS数据库表中的值是自动编号类型,并且确定是存在的值.

我不知道这里应对TelIDNum这个变量定义成一个什么类型才能匹配.请教大家了.谢谢.
展开
 我来答
excel712
2009-05-13 · TA获得超过329个赞
知道小有建树答主
回答量:250
采纳率:0%
帮助的人:0
展开全部
自动编号既然知道为long类型,你查询的时候值就不能用单引号界定起来
改成
DBstr = "select * from TelUser where TelID=" & TelIDNum & ""
试试,如果还不行,就把DBstr打印出来看看,应该类似于
select * from TelUser where TelID=32 '或者什么数值
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式