首先有一点要明白,日期时间类型的变量,其本质也是一个数字,是个双精度浮点数,其整数部分代表日期,小数部分代表时间,未赋值的日期时间类型变量,其值是0,所以只要判断它是否为0就行:
创新互联公司服务项目包括察哈尔右翼后网站建设、察哈尔右翼后网站制作、察哈尔右翼后网页制作以及察哈尔右翼后网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,察哈尔右翼后网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到察哈尔右翼后省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
If GettmpDate = 0 Then
还有一种方法是直接判断数据库中的字段值是否为Null:
If IsNull(rs("tmpDate")) Then
如果上述方法你觉得不好理解,还有这样的让你好理解的方法:
If GettmpDate = #0:00:00# Then
IsArray 函数
返回 Boolean 值,指出变量是否为一个数组。 语法
IsArray(varname)
必要的 varname 参数是一个指定变量的标识符。 说明
如果变量是数组,则 IsArray 返回 True;否则返回 False。对于包含数组的 variant 表达式来说,IsArray 尤为有用。
IsDate 函数
返回 Boolean 值,指出一个表达式是否可以转换成日期。 语法
IsDate(expression)
必要的 expression 参数是一个 Variant,包含日期表达式或字符串表达式,这里的字符串表达式是可以作为日期或时间来认定的。 说明
如果表达式是一个日期,或可以作为有效日期识别,则 IsDate 返回 True;否则返回 False。在 Microsoft Windows 中,有效日期的范围介于公元 100 年 1 月 1 日与公元 9999 年 12 月 31 日之间;其有效范围随操作系统不同而不同。
IsEmpty 函数
返回 Boolean 值,指出变量是否已经初始化。 语法
IsEmpty(expression)
必要的 expression 参数是一个 Variant,包含一个数值或字符串表达式。但是,因为 IsEmpty 被用来确定个别变量是否已初始化,所以 expression 参数通常是单一变量名。
说明
如果变量未初始化或已明确设置为 Empty,则 IsEmpty 返回 True;否则返回 False。如果 expression 含有多个变量,则 IsEmpty 总是返回 False。IsEmpty 只返回对 variant 表达式有意义的信息。
IsNull 函数
返回 Boolean 值,指出表达式是否不包含任何有效数据 (Null)。 语法
IsNull(expression)
必要的 expression 参数是一个 Variant,其中包含数值表达式或字符串表达式。 说明
如果 expression 为 Null,则 IsNull 返回 True;否则 IsNull 返回 False。如果 expression 由多个变量组成,则表达式的任何作为变量组成成分的 Null 都会使整个表达式返回 True。
Null 值指出 Variant 不包含有效数据。Null 与 Empty 不同,后者指出变量尚未初始化。Null 与长度为零的字符串 (““) 也不同,长度为零的字符串指的是空串。
重要 使用 IsNull 函数是为了确定表达式是否包含 Null 值的。在某些情况下,希望表达式取值为 True,比如希望 If Var = Null 和 If Var Null 取值为 True,而它们总取值为 False。这是因为任何包含 Null 的表达式本身就是 Null,所以为 False。
IsNumeric 函数
返回 Boolean 值,指出表达式的运算结果是否为数。 语法
IsNumeric(expression)
必要的 expression 参数是一个 Variant,包含数值表达式或字符串表达式。 说明
如果整个 expression 的运算结果为数字,则 IsNumeric 返回 True;否则返回 False。
如果 expression 是日期表达式,则 IsNumeric 返回 False。
IsObject 函数
返回 Boolean 值,指出标识符是否表示对象变量。 语法
IsObject(identifier)
必要的 identifier 参数是一个变量名。 说明
IsObject 只用于确定 Variant 是否属于 VarType vbObject。如果 Variant 实际引用(或曾经引用过)一个对象,或者如果 Variant 包含 Nothing,则可能出现这种情况。
如果 identifier 是 Object类型或任何有效的类类型,或者,如果 identifier 是 VarType vbObject 的 Variant 或用户自定义的对象,则 IsObject 返回 True;否则返回 False。即使变量已设置成 Nothing,IsObject 也仍返回 True。
使用错误捕获方法可以确认对象引用是否有效。 IsMissing 函数
返回 Boolean 值,指出一个可选的 Variant 参数是否已经传递给过程。 语法
IsMissing(argname)
必要的 argname 参数包含一个可选的 Variant 过程参数名。 说明
使用 IsMissing 函数来检测在调用一个程序时是否提供了可选 Variant 参数。如果对特定参数没有传递值过去,则 IsMissing 返回 True;否则返回 False。如果 IsMissing 对某个参数返回 True,则在其它代码中使用这个丢失的参数将产生一个用户自定义的错误。如果对 ParamArray 参数使用
IsMissing,则函数总是返回 False。为了检测空的 ParamArray,可试看一下数组的上界是否小于它的下界。
注意 IsMissing 对简单数据类型(例如 Integer或Double)不起作用,因为与Variants不同,它们没有“丢失”标志位的前提。正由于此,对于可选参数类型,可以指定缺省值。如果调用过程时,参数被忽略,则该参数将具有该缺省值,如下列示例中所示:
Sub MySub(Optional MyVar As String = "specialvalue") If MyVar = "specialvalue" Then ' MyVar 被忽略。 Else ... End Sub
在许多情况下,如果用户从函数调用中忽略,则可以通过使缺省值等于希望 MyVar 所包含的值来完全忽略 If MyVar 测试。这将使您的代码更简洁有效。
错误提示不说得很清楚么,类型不对。
你操作有数据的记录时,有日期的那个字段它是有数据的,直接可以取出date型数据,而如果为空的话,那就不是date型数据了,它就是一个null了,是空的,null和date是两回事。所以你在写程序的时候,要检查一下,字段是不是null,如果是null那就不能往外读数,不是null,那就直接往外读。
if myreader.getstring(2) "" then
else
....
end if
取反 这样可以的 我一直就这样写
select * from 数据表名 where isnull(日期字段)
以上SQL查询语句适用于ACCESS数据库