以下是对表的修改的代码:
yfgz、g5、g10都是salary表的字段,字段类型为float(双精度型)。执行下面代码无错误,但是一个有趣的问题出现了。如果纪录的g5、g10字段有值,则能修改yfgz的值。如果纪录的g5、g10字段只要其中一个字段无值,就不能修改yfgz字段的值(此时yfgz为空)。dm.qr2.Close;
dm.qr2.SQL.Text:='update salary set yfgz=g5+g10';
dm.qr2.ExecSQL;怎么办?
yfgz、g5、g10都是salary表的字段,字段类型为float(双精度型)。执行下面代码无错误,但是一个有趣的问题出现了。如果纪录的g5、g10字段有值,则能修改yfgz的值。如果纪录的g5、g10字段只要其中一个字段无值,就不能修改yfgz字段的值(此时yfgz为空)。dm.qr2.Close;
dm.qr2.SQL.Text:='update salary set yfgz=g5+g10';
dm.qr2.ExecSQL;怎么办?
'update salary set yfgz=IsNull(G5, 0)+ Isnull(g10,0)'来更新.
dm.qr2.SQL.Text:='update salary set yfgz=IIF(isnull(g5), 0, g5)+IIF(isnull(g10), 0, g10)';