VB数据库查询问题 如果数据库无此内容,怎么显示“无此数据”提示

VB数据库查询问题 如果数据库无此内容,怎么显示“无此数据”提示,第1张

在rsOpen那句之后加上:

If rsBOF And rsEOF Then

MsgBox "无此数据"

Else

'这里放从i=0那句,到rsClose之前一句的代码!

End If

rsClose

End Sub

你那jzkNo,MzNO,Patient这三个字段 要么不写要么放到聚合函数里面,要么全放到group by后面,Group by

有一个原则:就是select后面的所有列中,没有使用聚合函数的列,必须出现在group by后面。

你的具体情况是什么我不是很了解,因为确实不太符合逻辑,感觉你的索引确实是有问题的。不过对于为什么针对索引没有结果,而全表扫描会出结果这个我倒是了解。。

正常情况下,一个表的索引不会包含所有记录,当索引字段为空时,在索引中是不包含这个记录的,比如说一个表中有100条记录,一个status字段,有50条记录为1,50条记录为空,那么如果查询语句通过索引来检索,结果只会有50条记录,因为另外50条记录在索引中是没有的。

不过你这个蛮奇怪。sid既然等于1,不应该为null的,按理不会出现这个情况,或者是索引状态是失效的?

不知道索引属主是不是你的用户,

或者可以考虑试试查一下。

SELECT tTABLE_NAME,tindex_name,tstatus FROM user_indexes t;

如果有dba权限就查

SELECT tTABLE_NAME,tindex_name,tstatus FROM dba_indexes t where ttable_name = '你的表名';

原因是数据库的数据后面有不可见字符(例如空格、制表、回车等),用下面的语句可以验证:

SELECT CONCAT('[',c,']'),LENGTH(c) FROM abcd

这个语句对字段C的前后添加[]显示,如果有空格可能会显示出来,同时显示c的长度,如果比你看见的多,肯定有问题。

你的数据库需要使用下面的语句来修复:

UPDATE abcd SET c=TRIM(c)

以上就是关于VB数据库查询问题 如果数据库无此内容,怎么显示“无此数据”提示全部的内容,包括:VB数据库查询问题 如果数据库无此内容,怎么显示“无此数据”提示、sql数据库查询不出数据、Oracle按索引字段条件查询无数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10157645.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存