以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  select查询结果为空,返回什么?  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=58062)

--  作者:80帅兜
--  发布时间:2014/10/10 18:39:00
--  select查询结果为空,返回什么?

dim str as list(of datarow)

str = datatables("表1").select("[性别] = \'男\')

dim max as integer = str.count

 

如上代码,如果搜索结果为空,str.count应该返回的是什么?  不是0吗      

我直接加了一个MESSAGEBOX想看看,但还是提示对象未被引用。。看不到到底是什么东西。

提求教


--  作者:czy
--  发布时间:2014/10/10 19:47:00
--  

返回0

 

Output.Show(DataTables("表1").Select("[性别] = \'男\'").Count)


--  作者:80帅兜
--  发布时间:2014/10/10 21:39:00
--  

但是有个问题,我这一直报错。

窗体里有两个表,都是副本。窗体名叫窗体1。。。表1和表2   表1和表2都有一个列:编号 

现在有一个按钮,我想点击时候,根据表1当前行的“编号”搜索表2的记录。。根据行数不同提示不同东西。。

代码如下:

dim a as integer

a = datatable("表2").select("[编号]" = \'" & Tables("窗体1_表1").current("编号") & "\'").count

select case a

    case 0

       messagebox.show("第一个提示")

    case 1

       messagebox.show("第二个提示")

    case else

       messagebox.show("第三个提示")

end select

 

如果a 的结果是1或者其它,都是正常显示提示,没有问题。。只有当结果是0的时候总是出现错误提示窗口:

我不明白到底是哪的问题。。请指教

 


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

--  作者:80帅兜
--  发布时间:2014/10/10 21:40:00
--  
我也试过了。如果搜不到结果,肯定返回的是0    那么应该程序没问题,继续执行select case中case 0 的程序啊。。为什么总提示这个窗口呢
--  作者:菲舍尔
--  发布时间:2014/10/10 22:16:00
--  

肯定是Tables("窗体1_表1").current 为空,加个判断

 


--  作者:80帅兜
--  发布时间:2014/10/10 22:32:00
--  
以下是引用菲舍尔在2014-10-10 22:16:00的发言:

肯定是Tables("窗体1_表1").current 为空,加个判断

 

加这个 if tables().current isnot nothing then

解决问题了。