注册 登录
编程论坛 VB6论坛

求教:VB6使用SQL语句的子句where变量的问题

zff64 发布于 2023-09-18 10:41, 1089 次点击
Dim number1 As String
 number1 = Trim(Text2)
 rst.Open "select * from operator_info where number = ' " & number1 & " ' ", cnn
 为什么找不到数据,表里有要的数据.
 这句number = ' " & number1 & " '对吗?
 请指导
3 回复
#2
风吹过b2023-09-18 12:42
你显示一下你的SQL命令的最终字符看看。

where number = ' " & number1 & " ' "
在这里面, 第一个 单引号 后面到 双引号之间有空格,第二个单引号前面到双引号之间也有空格,拼接完成后,如
现设 number = "123"
拼接后变成
select * from operator_info where number = ' 123 '
也就是查找内容变成了 " 123 " (前后各有一个空格)。而你数据库中是 "123"(前后均无空格),当然查不到。

#3
zff642023-09-18 13:59
回复 楼主 zff64
谢谢,按照您的指导解决了
#4
独木星空2023-09-18 20:54
有没有空格,或者标点符号是不是在英文时输入的都有关系,我以前也遇到过类似问题,这样的细致之处,没有遇到过,一般是很难发现的,除非自己编写过程严格按照格式走。
1