select的怪事!急问!!!!!!

powpow 2002-03-04 10:36:35
假如字段中存在几个记录,"鳞9399","聋94994".....执行select * from table where code like('鳞*'),会把“聋94994”也选出来!这是怎么回事呀!是vb的bug还是数据库的问题,我用的是access
...全文
63 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
Bardo 2002-03-04
  • 打赏
  • 举报
回复
你一定是win2000,你需要装一个VB的中文版了或SP5了
junglerover 2002-03-04
  • 打赏
  • 举报
回复
用这个总可以吧?
select * from table where left(code,1)= '鳞'

我认为还是你的机器有毛病,我刚用你最先的SQL语句试了一下,
根本没问题么。
要不你直接用ACCESS打开数据库,在ACCESS里面试一下?
yanz 2002-03-04
  • 打赏
  • 举报
回复
select * from table where code like '鳞%'
Tadpole0510 2002-03-04
  • 打赏
  • 举报
回复
关注...........
用%号差不多
powpow 2002-03-04
  • 打赏
  • 举报
回复
为什么还是不行呀?我用的你的方法select * from table where instr(code,'鳞')=1,还是把‘聋’搜出来了!
powpow 2002-03-04
  • 打赏
  • 举报
回复
这样会不会影响查询速度呀?
donotbesilent 2002-03-04
  • 打赏
  • 举报
回复


Like查询的字段含有中文时,查询结果不是很准确,你可以用:
select * from table where instr(code,'鳞')<>0

powpow 2002-03-04
  • 打赏
  • 举报
回复
试试在98下,这样的问题更多!2000已经很不错了,我现在只发现这2个字!我只有在查找出来后再做一次判断了!如果有补丁就好了
wfq1128 2002-03-04
  • 打赏
  • 举报
回复
查找与排序汉字时好象是按它的汉语拼音来的,这两个汉字的拼音开头是一样的不知是不这个原因。
donotbesilent 2002-03-04
  • 打赏
  • 举报
回复


我想也是,我的也是WIN2000,VB中文版SP5,我试了很多其他字都没问题,就是这个"鳞"和"聋",好象是同一个字似的,老是同时查到,并且在这之前,用Instr函数真的是万试万灵的.

powpow 2002-03-04
  • 打赏
  • 举报
回复
我的是win200,已经装了vb中文版和sp5!唉!看来是微软的问题了!
donotbesilent 2002-03-04
  • 打赏
  • 举报
回复


哇,靠,怎么搞的,万试万灵的Instr也失效了.
我试了一下,其他都正常,就是鳞和聋分不开,微软好象把它们当成同一个字了,能查出"聋"就能查出"鳞",能查出"鳞"也能查出"聋",不知道怎么搞的,密切关注!!!

743

社区成员

发帖
与我相关
我的任务
社区描述
VB 版八卦、闲侃,联络感情地盘,禁广告帖、作业帖
社区管理员
  • 非技术类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧