以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  2013-10-13版datatable.select  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=44230)

--  作者:jsq96jg
--  发布时间:2013/12/26 8:46:00
--  2013-10-13版datatable.select

2013-10-13版datatable.select()括号里无法对日期列进行查询,什么情况呀?

比如:datatables("abc").select("[人员类型]=\'工人\' and [日期]>#01/01/0001#"),无论日期列“大于”“小于”“等于”还是=nothing 、=null ,反正,无论判断怎么写都不能用。请狐爸试下哈


--  作者:Bin
--  发布时间:2013/12/26 8:49:00
--  
怎么个不能用? 我测试完全没问题的
--  作者:jsq96jg
--  发布时间:2013/12/26 8:58:00
--  

是2013-10-13版啊,冰大神啊;那我的是怎么回事呢?我现在加一条if 来进行判断的


--  作者:Bin
--  发布时间:2013/12/26 9:02:00
--  
请问你是怎么个不能用法?  出现什么错误?  最好上个例子看看
--  作者:jsq96jg
--  发布时间:2013/12/26 9:05:00
--  

就按我上面写的那条那样用的,日期列无论怎么写都查不到记录,去掉日期列判断就OK了,用IF判断也行,就在SELECT里无法判断,对日期列为空值的查询无效,怎么写都不行。


--  作者:Bin
--  发布时间:2013/12/26 9:09:00
--  
是不是非日期字段,上个例子看看吧
--  作者:Bin
--  发布时间:2013/12/26 9:09:00
--  
判断空值应该使用  datatables("abc").select("[人员类型]=\'工人\' and [日期] is null")
--  作者:jsq96jg
--  发布时间:2013/12/26 9:22:00
--  

以前写好并使用过的代码,代码和字段是没有问题的,最近重新统计出问题了。所以怀疑是2013-10-13版的问题。我的系统发布给客户了,不便更新2013-10-14,我想确定下不是10-13的问题。


--  作者:程兴刚
--  发布时间:2013/12/26 9:22:00
--  

1、日期列的值:01/01/0001在狐表中因判断为is null。

2、判断日期列的值,目前应用的数据库系统,直接判断为< #01/01/1800# 相信您的单位或客户,一般情况下不会还在登记和统计200年前的数据(除非是考古单位),这样也可以。


--  作者:jsq96jg
--  发布时间:2013/12/26 9:27:00
--  

程老师说的不完全正确,我考虑的是客户可能不填写该字段,所以直接用大于2013-01-01,以为能省一句判断该列为空的 is null的代码。哪知道用IS NULL也不行,用=null也不行,用=、> #01/01/0001#统统不行。