以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]关于SQLSelect查询不到记录  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=185717)

--  作者:nsdata
--  发布时间:2023/3/12 23:40:00
--  [求助]关于SQLSelect查询不到记录

Access表中有5万行记录并确有要查询关键字的,外部数据表设置为“默认加载行数”,但我用SQLSelect"模糊查询" 却查询不到记录请问是什么原因如何解决?
代码如下,执行后打印数量为0:

Dim drs As List(Of DataRow) = DataTables("zybook").SQLSelect("content Like \'%外水应入不得入%\'")
Output.Show("数量:" & drs.Count)
For Each dr As DataRow In drs
   Output.Show(dr("content"))
Next

更奇怪是以上代码能查询200行前记录,200行后的记录都查询不到明明是有的


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



[此贴子已经被作者于2023/3/13 23:02:38编辑过]

--  作者:有点蓝
--  发布时间:2023/3/13 8:35:00
--  
应该是数据问题,比如中间有空格,回车等。分析一下找不到的行的数据
--  作者:nsdata
--  发布时间:2023/3/13 9:16:00
--  

我看了表中的行内容,查询的关键字“%外水应入不得入%”中确实不存在空格或换行符号
同样情况下我使用 SQLfind 精准查找能找到,SQLSelect却没查询到!
同样情况用SQLSelect 200行前的记录任意查询都可以,200行后的记录都查询不了,我实在搞不懂

--  作者:有点蓝
--  发布时间:2023/3/13 9:25:00
--  
检查表格数据里“外水应入不得入”,不是检查条件
--  作者:nsdata
--  发布时间:2023/3/13 23:01:00
--  
  
有点蓝,请看以下2张截图同样的代码,表里面也确实有对应关键字的,但SQLSelect 就是查询不到数据


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




--  作者:有点蓝
--  发布时间:2023/3/13 23:14:00
--  
试试

DataTables("zybook").SQLSelect("[content] Like \'*外水应入不得入*\'")

--  作者:nsdata
--  发布时间:2023/3/14 20:33:00
--  
   
  %换成*之后连前200行的记录都查询不到了,这个应该不行的。

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


\'之前下面的代码能查询到表中200行前的记录,200行之后的就查询不到  百思不得姐!!! 是不是SQLSelect函数有bug!!  有点蓝有劳你得再帮我分析分析
Dim drs As List(Of DataRow) = DataTables("zybook").SQLSelect("content Like \'%外水应入不得入%\'")
Output.Show("数量:" & drs.Count)
For Each dr As DataRow In drs
   Output.Show(dr("content"))
Next


--  作者:有点蓝
--  发布时间:2023/3/14 20:48:00
--  
函数没有问题。请上传实例测试
--  作者:nsdata
--  发布时间:2023/3/15 21:51:00
--  
  
    已上传DEMO,在线等你哈图片点击可在新窗口打开查看图片点击可在新窗口打开查看图片点击可在新窗口打开查看
    说明:原本数据库记录是5万条的,用SQLSelect("content Like \'%外水应入不得入%\'") 查询不到,现删除了大量记录只保留几十条记录倒是能查询到,请帮忙分析下是说明原因, 测试代码在 窗口设计那里

[此贴子已经被作者于2023/3/16 21:23:15编辑过]

--  作者:有点蓝
--  发布时间:2023/3/16 8:46:00
--  
现在上面的实例,有哪个数据查不到?如果实例没有问题发上来是没有意义的,请上传有问题的数据库测试