2
我在客户端数据集中有一个Aggregate字段,如果客户端数据集为空,我使用函数来获取聚合值,函数应该返回0TAggregateField.IsNull和(TAggregateField.Value = Null)有什么区别
如果我这样做:
if MyClientDataSet.AggregateField.IsNull then
Result := 0
else
Result := MyClientDataSet.AggregateField.Value;
当客户端数据集为空,则执行else部分并抛出一个异常(不能变转换成外币的错误)。
但如果我这样做,这样
if MyClientDataSet.AggregateField.Value = Null then
Result := 0
else
Result := MyClientDataSet.AggregateField.Value;
它工作正常!
所以我的问题是:什么是IsNull属性和比较值属性与空值,在TAggregateField之间的区别?
我有一个TClientDataset与一个记录TAgregate.IsNull返回False甚至认为唯一的记录值是空 – EMBarbosa 2014-02-12 16:48:18