以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助] GetUniqueValues 取值出错!是bug吗? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=687) |
||||||
-- 作者:gdlgh -- 发布时间:2008/9/24 13:55:00 -- [求助] GetUniqueValues 取值出错!是bug吗? 仓库名称 存放位置(字符型) a 01 b 01 c 0101 d 0102 e 010201 f 010202 g 0103 h 010101 参考帮助的示例代码做的(其它代码省了): DataTables("库存").GetUniqueValues("存放位置 Like \'01??\'", "仓库名称")--无值返回 DataTables("库存").GetUniqueValues("存放位置 Like \'01##\'", "仓库名称")--也无值返回 DataTables("库存").GetUniqueValues("存放位置 Like \'01*\'", "仓库名称")--有值返回 DataTables("库存").GetUniqueValues("存放位置 Like \'0101\'", "仓库名称")--有值返回 DataTables("库存").GetUniqueValues("存放位置 Like \'0102\'", "仓库名称")--有值返回 --------------- DataTables("库存").GetUniqueValues("存放位置 Like \'01??01\'", "仓库名称")--无值返回 DataTables("库存").GetUniqueValues("存放位置 Like \'01##01\'", "仓库名称")--也无值返回 DataTables("库存").GetUniqueValues("存放位置 Like \'010201\'", "仓库名称")--有值返回
是bug吗?? 呵。用SQL可以返回值!! Dim cmd As New SQLCommand Dim dt As DataTable cmd.C cmd.CommandText = "Select * From [库存] where 存放位置 like \'01__01\' " dt = cmd.ExecuteReader() \'生成统计表 For Each dr As Datarow In dt.Datarows Output.Show(dr("仓库名称")) Next [此贴子已经被作者于2008-9-24 14:30:10编辑过]
|
||||||
-- 作者:狐狸爸爸 -- 发布时间:2008/9/24 15:22:00 -- 你这里是一个表达式,不是代码中的like运算符。 表达式中的like运算符,请参考帮助文件“使用指南 - 表达式 - 运算符”。 呵呵,这个问题还是不存在。 所以我说:有时不一定就是软件的问题。 |
||||||
-- 作者:gdlgh -- 发布时间:2008/9/24 15:26:00 -- 这也就说GetUniqueValues不能用like运算符!但用*可返回值呀??? |
||||||
-- 作者:狐狸爸爸 -- 发布时间:2008/9/24 15:28:00 -- 以下是引用gdlgh在2008-9-24 15:26:00的发言:
这也就说GetUniqueValues不能用like运算符!但用*可返回值呀???
[此贴子已经被作者于2008-9-24 15:28:57编辑过]
|
||||||
-- 作者:gdlgh -- 发布时间:2008/9/24 15:41:00 -- 呵。惭愧呀!帮助无点睇,就是用到就复制。 |
||||||
-- 作者:gdlgh -- 发布时间:2008/9/24 16:10:00 -- 呵。。看了帮助,like也太简单了!只是开头和结尾!!若按上面的要求也不行了!! 在 LIKE 比较中,* 作为通配符,表示任意个数的字符,通配符只能在开头或者结尾出现。例如: [姓名] LIKE \'赫*\' [姓名] LIKE \'*赫\' 分别表示姓名中包括“赫”,姓名开头是“赫”(姓赫),姓名结尾是“赫” 在字符串的中间不允许使用通配符。例如,不允许 \'赫*丰\' |