关于Update语句的问题(200分)

  • 主题发起人 主题发起人 林旭斌
  • 开始时间 开始时间

林旭斌

Unregistered / Unconfirmed
GUEST, unregistred user!
Update RkInquire set s_sum=P_ycl+P_fc+P_dl+P_rl
当其中某条记录某字段存在空值时,该条记录S_SUM字段所得值也会是空值。
请问如何写这条语句才不会造成这种状况,谢谢!
 
最好的办法就是将
P_ycl,P_fc,P_dl,P_rl等字段的默认值设成0
 
将p_ycl,p_fc,P_rl字段的值设默认为0
 
嘿嘿,我当然知道,可是该死的ACCESS 97设了也没有用!
 
那么每次新建记录的时候给它付上
 
这个方法我也知道,可要改的东西太多,只想知道是否还有更简便的方法,如修改该条语句等等。
 
update table set --------------- where --------
 
你还是没有设对。你将字段的“允许为空”属性设为FALSE,默认值设为0就可以了。
 
插入前先判断

利用strToInt异常来判断也可以
 
将SQL改一下
Update RkInquire set s_sum=IIf(IsNull(P_ycl),0,P_ycl)
+IIf(IsNull(P_fc),0,P_fc)
+IIf(IsNull(P_dl,0,P_dl)
+IIf(IsNull(P_rl,0,P_rl)
 
一個笨方法:
Update RkInquire set P_ycl=0 where p_ycl is null
Update RkInquire set p_fc=0 where p_fc is null
Update RkInquire set P_rl=0 where p_rl is null
Update RkInquire set s_sum=P_ycl+P_fc+P_dl+P_rl
 
改成这样就OK了,D5+ACCESS97通过。
Update RkInquire set s_sum=iif(P_ycl is null,0,p_ycl)+iif(P_fc is null,0,p_fc)+iif(P_rl is null,0,P_rl)+iif(P_dl is null,0,P_dl)
 
多谢位相助!
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
926
SUNSTONE的Delphi笔记
S
后退
顶部