Foxtable(狐表)用户栏目专家坐堂 → 模糊查询


  共有7331人关注过本帖树形打印复制链接

主题:模糊查询

美女呀,离线,留言给我吧!
nand
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:25 积分:257 威望:0 精华:0 注册:2013/4/14 9:25:00
模糊查询  发帖心情 Post By:2013/4/20 9:53:00 [只看该作者]

在一文本框事件写入代码:

 

Dim txt As String = e.Form.Controls("查询").Text
Dim tbl As Table = Tables("标准产品_标准产品")
If txt = "" Then
    tbl.Filter = ""
Else
    txt = "'*" & txt & "*'"
    tbl.Filter = "产品名称 Like " & txt & " Or 型号 Like " & txt & " Or 规格 Like " & txt & " Or 图号 Like " & txt
End If

 

查找规格为:600*600*1020

 

报错为:Like 运算符中出错: 字符串模式“*600*6*”无效。

 

字样的出错,也就是带“*”号的地方出错,求师傅,师兄帮忙解决

[此贴子已经被作者于2013-4-20 9:54:23编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2013/4/20 9:59:00 [只看该作者]

不能在中间使用*号的吧

 回到顶部
美女呀,离线,留言给我吧!
nand
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:25 积分:257 威望:0 精华:0 注册:2013/4/14 9:25:00
  发帖心情 Post By:2013/4/20 10:07:00 [只看该作者]

是的,但我们存在这种规格和筛选条件

 回到顶部
帅哥哟,离线,有人找我吗?
XYT
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1418 积分:7167 威望:0 精华:0 注册:2013/3/18 8:37:00
  发帖心情 Post By:2013/4/20 10:07:00 [只看该作者]

Output.Show( "600*600*1020" Like "###*###*####")
[此贴子已经被作者于2013-4-20 10:11:26编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
FoxMan
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:302 积分:1860 威望:0 精华:0 注册:2012/4/27 11:34:00
  发帖心情 Post By:2013/4/20 10:26:00 [只看该作者]

这样试试:
Dim txt As String = e.Form.Controls("查询").Text
Dim tbl As Table = Tables("标准产品_标准产品")
If txt = "" Then
    tbl.Filter = ""
Else
    txt = "'*" & txt.replace("*","[*]")  & "*'"
    tbl.Filter = "产品名称 Like " & txt & " Or 型号 Like " & txt & " Or 规格 Like " & txt & " Or 图号 Like " & txt 
End If

 回到顶部
帅哥哟,离线,有人找我吗?
lsy
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2013/4/20 10:32:00 [只看该作者]

e.Form.Controls("查询").Text = e.Form.Controls("查询").Text.Replace("*","")

Dim txt As String = e.Form.Controls("查询").Text
Dim tbl As Table = Tables("标准产品_标准产品")
If txt = "" Then
    tbl.Filter = ""
Else
    txt = "'*" & txt & "*'"
    tbl.Filter = "产品名称 Like " & txt & " Or 型号 Like " & txt & " Or 规格 Like " & txt & " Or 图号 Like " & txt
End If

[此贴子已经被作者于2013-4-20 10:46:54编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
XYT
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1418 积分:7167 威望:0 精华:0 注册:2013/3/18 8:37:00
  发帖心情 Post By:2013/4/20 10:35:00 [只看该作者]

6楼正解


 回到顶部
美女呀,离线,留言给我吧!
nand
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:25 积分:257 威望:0 精华:0 注册:2013/4/14 9:25:00
  发帖心情 Post By:2013/4/20 10:47:00 [只看该作者]

谢谢5楼的师兄,完美解决,多谢!!

 回到顶部
帅哥哟,离线,有人找我吗?
lsy
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2013/4/20 10:54:00 [只看该作者]

以下是引用nand在2013-4-20 10:47:00的发言:
谢谢5楼的师兄,完美解决,多谢!!

先别忙着高兴,狐表里的单引号和方括号,出的错误比这还厉害,不如在查询的时候事先去掉,一了百了,省去烦恼。


 回到顶部