G
gunwithlove
Unregistered / Unconfirmed
GUEST, unregistred user!
高手们,你们好!
现在我有这样一个问题:
我通过dbgrid输入字段A,B的值,再计算字段C=A*B,然后将字段A,B,C写入表table,我用的是
Adoquery,并将C定义为计算字段(在table中C不能为空),在adoquery的oncalfields中
我是这样写的:
mynumber:= ADOQuery3.FieldByName('数量').asinteger
myprice:= ADOQuery3.fieldbyname('单价').asinteger;
adoquery3.FieldByName ('付款金额').asinteger:=mynumber*myprice;
(或写作adoquery3.fieldvalues['付款金额']:=mynumber*myprice
然后,再通过adoquery.updatebatch更新table2
程序运行时“付款金额”能被正确计算并显示出来(单步跟踪时它也有值),但是在由adoquery3
提交时出错,系统说“付款金额”的值为空,不能写入库中,可是明明我已经看到了“付款金额”
了。我不知道delphi中对计算字段有何特殊要求,怎么会不能写到数据库呢?(计算字段是readonly吗)
请大家帮忙解决一下,谢谢了!
现在我有这样一个问题:
我通过dbgrid输入字段A,B的值,再计算字段C=A*B,然后将字段A,B,C写入表table,我用的是
Adoquery,并将C定义为计算字段(在table中C不能为空),在adoquery的oncalfields中
我是这样写的:
mynumber:= ADOQuery3.FieldByName('数量').asinteger
myprice:= ADOQuery3.fieldbyname('单价').asinteger;
adoquery3.FieldByName ('付款金额').asinteger:=mynumber*myprice;
(或写作adoquery3.fieldvalues['付款金额']:=mynumber*myprice
然后,再通过adoquery.updatebatch更新table2
程序运行时“付款金额”能被正确计算并显示出来(单步跟踪时它也有值),但是在由adoquery3
提交时出错,系统说“付款金额”的值为空,不能写入库中,可是明明我已经看到了“付款金额”
了。我不知道delphi中对计算字段有何特殊要求,怎么会不能写到数据库呢?(计算字段是readonly吗)
请大家帮忙解决一下,谢谢了!