我想这个问题不是很难,不过大家看看吧!

cqwty 2001-10-04 04:06:29
用过sql server的人都知道,里面有一个isnull的函数,或者是过程吧!
ISNULL(check_expression, replacement_value)
那么delphi里面有这种过程或者是函数吗?
是关于sql语句的,谢谢!
...全文
71 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
tikkypeng 2001-10-04
  • 打赏
  • 举报
回复
呵呵~~
光明山人 2001-10-04
  • 打赏
  • 举报
回复
我编过一个函数叫varIf:

function varIf( Condition: Boolean; TrueVal, FalseVal: Variant ): Variant;
begin
if Condition then
Result := TrueVal
else
Result := FalseVal;
end;
// 因为用的变量类型是Variant,所以可以适应很多类型,不过也有限制的。

很简单的,大家见笑了 :D。主要是用来简化语句,给懒人用的。

可以这样使用:
IntValue := varIf( Field.IsNull, Field.AsInteger, 0 );

StrValue := varIf( Field.IsNull, Field.AsString, '' );

我估计你可以用一个专门一点的函数如:
function GetFieldValue( AField: TField; NullVal: Variant ): Variant;
begin
if AField.IsNull then
Result := NullVal
else
Result := AFieldValue;
end;

然后可以这样写了:
IntValue := GetFieldValue( Field1, 0 );
或者
StrValue := GetFieldValue( Field1, '' );
say 2001-10-04
  • 打赏
  • 举报
回复
gz
chechy 2001-10-04
  • 打赏
  • 举报
回复
你需要检查字段,那么就有TField.IsNull
如果是检查Variant类型,有VarIsNull函数
具体请查Help。
zxtyhy 2001-10-04
  • 打赏
  • 举报
回复
自己写一个不就行了
cqwty 2001-10-04
  • 打赏
  • 举报
回复
可是要使用在select语句里面阿!
sql server的是
select ISNULL(price,0.00) as price from titles
能够实现这个功能吗?

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧