一个关于select…like语句的用法

来源:百度知道 编辑:UC知道 时间:2024/07/07 01:09:06
我有一个数据表,里面有3个字段:id(varchar(10)),station(varchar(50)),flag(int)。现在我要查询其中id为1(1通过文本框输入)的路线经过的站点,我的select语句是这样写的:
tab3.Open " select * from line where id = '%" & Text1.Text & "%'", con, adOpenKeyset, adLockOptimistic
可这样1能查出来,可连11、12等包含1的路线全查出来了,不知能不能在查询语句中把这些没用都过滤掉?id字段是字符类型,不是整型。
我把两个%号去掉了,可运行时出错说 Invalid field comparison near 'like '1'',是不是类型不对的意思?我的数据表里id是字符行,而输入的1是整形,这会不会影响?麻烦给为再给点意见,谢了~~~~
把=号改成like就会出现上述问题,是不是字符串是不能用=号来判断相等的?

显然你想要的是精确查询,而不是模糊查询,那就把前后的两个% 都拿掉.

tab3.Open " select * from line where id = '" & Text1.Text & "'", con, adOpenKeyset, adLockOptimistic

把两个%去掉

tab3.Open " select * from line where id = '" & Text1.Text & "'", con, adOpenKeyset, adLockOptimistic

两个 ' 是不能少的

tab3.Open " select * from line where id = '" & Text1.Text & "'", con, adOpenKeyset, adLockOptimistic

这样修改就可以了!

tab3.Open " select * from line where id = '" & Text1.Text & "'", con, adOpenKeyset, adLockOptimistic

你两边加个%就是匹配所有id有Text1.Text的值

去掉%就可以了。