以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  SQLTableg表的功能 请教  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=96802)

--  作者:领悟
--  发布时间:2017/2/28 9:53:00
--  SQLTableg表的功能 请教

图片点击可在新窗口打开查看此主题相关图片如下:qq图片20170228094854.png
图片点击可在新窗口打开查看


我在窗体中放了一个 TextBox ,想在TB里面输入任意文本,对 SQLTableg中的结果 进行 模糊筛选,总是提示错误,求助一下……

SQL的 Like 应该怎么连接?

--  作者:有点色
--  发布时间:2017/2/28 9:59:00
--  
报什么错?请贴出完整代码
--  作者:领悟
--  发布时间:2017/2/28 10:02:00
--  
////////报错……。
.NET Framework 版本:2.0.50727.5466
Foxtable 版本:2016.7.29.1
错误所在事件:
详细错误信息:
未找到列 [物料型号]。

/////代码
Dim txt As String = e.Form.Controls("a").Text
Dim tbl As Table = Tables("请购单-04_Table1")
If txt = "" Then
    tbl.Filter = ""
Else
    txt = "\'%" & txt & "%\'"
    tbl.Filter = "物料名称 Like " & txt & " Or 物料规格 Like " & txt & " Or 物料型号 Like " & txt & " Or 物料编码 Like " & txt  & "   Or 成品型号 Like " & txt & "  Or 加工工艺 Like " & txt & "  "


End If

--  作者:领悟
--  发布时间:2017/2/28 10:05:00
--  
.NET Framework 版本:2.0.50727.5466
Foxtable 版本:2016.7.29.1
错误所在事件:
详细错误信息:
无法在 System.String 和 System.Int32 上执行“Like”操作。



这是错误信息

--  作者:有点蓝
--  发布时间:2017/2/28 10:53:00
--  

3楼的提示很明显了,窗口表没有这个列[物料型号]。

 

4楼的意思是数字列无法直接使用like,假如“物料编码”是整型

 

Convert([物料编码], \'System.String) like " & txt & "

 


--  作者:有点色
--  发布时间:2017/2/28 11:06:00
--  
Dim txt As String = e.Form.Controls("a").Text
Dim tbl As Table = Tables("请购单-04_Table1")
If txt = "" Then
    tbl.Filter = ""
Else
    txt = "\'%" & txt & "%\'"
    tbl.Filter = "物料规格 Like " & txt & " Or 物料型号 Like " & txt & " Or Convert(物料编码, \'System.String\') Like " & txt  & " Or 成品型号 Like " & txt & "  Or 加工工艺 Like " & txt & "  "
End If