X
xhqing
Unregistered / Unconfirmed
GUEST, unregistred user!
如何不用“计算字段”对象,而怎么实现我的计算功能?
初学Delphi,我现在正需做好一个小程序,用的是Delphi 7+ Access 2002数据库,该数据库有9个表,我想用一个ADOQuery、一个DBGrid来完成对表的数据加工与显示,我是想在运行期连接数据库,而且在运行期临时生成查询的SQL字符串完成查询,所以无法在字段编辑器里做“计算字段”,提示:“验证失败”,而我要用“计算字段”完成有关计算。
如果不在运行期生成查询的SQL字符串,那要用到很多个ADOQuery,以致影响诸如保存、插入、删除等操作代码很是复杂。
我现在不知道如何脱离“计算字段”对象不用它,而怎么实现我的计算功能。
如果用SQL的UPDATE命令,那会或者要频繁地更新整个表的所有记录或者要另设按钮每次手动地更新需计算的数据。
我现在尝试在DBGrid1的KeyDown事件中加:
if key=#13 then
if DBGrid1.SeletedField.FieldName=’c2’ then
ADOQuery1.FieldByName(‘c3’).Value=ADOQuery1.FieldByName(‘c1’).Value / ADOQuery1.FieldByName(‘c2’).Value,可是提示:数据集不在“编辑”或“插入”状态。
把这段代码加在ADOQuery1的AfterPost事件中也不行。
1、请问像我这个程序,整的设计模式该是怎样的才是最好最科学的、省事的,是用一个ADOQuery、一个DBGrid,还是用多个ADOQuery、一个DBGrid。
2、请问如何脱离“计算字段”对象不用它,而怎么实现我的计算功能。还是能不能在运行期动态地生成“计算字段”?
3、另外,听说用中文字段会引起程序的不稳定,是否是这样的,我没经验,也没测试过。
敬请哪位热心的耐心的高人、朋友指点,在此先十分感谢您!
初学Delphi,我现在正需做好一个小程序,用的是Delphi 7+ Access 2002数据库,该数据库有9个表,我想用一个ADOQuery、一个DBGrid来完成对表的数据加工与显示,我是想在运行期连接数据库,而且在运行期临时生成查询的SQL字符串完成查询,所以无法在字段编辑器里做“计算字段”,提示:“验证失败”,而我要用“计算字段”完成有关计算。
如果不在运行期生成查询的SQL字符串,那要用到很多个ADOQuery,以致影响诸如保存、插入、删除等操作代码很是复杂。
我现在不知道如何脱离“计算字段”对象不用它,而怎么实现我的计算功能。
如果用SQL的UPDATE命令,那会或者要频繁地更新整个表的所有记录或者要另设按钮每次手动地更新需计算的数据。
我现在尝试在DBGrid1的KeyDown事件中加:
if key=#13 then
if DBGrid1.SeletedField.FieldName=’c2’ then
ADOQuery1.FieldByName(‘c3’).Value=ADOQuery1.FieldByName(‘c1’).Value / ADOQuery1.FieldByName(‘c2’).Value,可是提示:数据集不在“编辑”或“插入”状态。
把这段代码加在ADOQuery1的AfterPost事件中也不行。
1、请问像我这个程序,整的设计模式该是怎样的才是最好最科学的、省事的,是用一个ADOQuery、一个DBGrid,还是用多个ADOQuery、一个DBGrid。
2、请问如何脱离“计算字段”对象不用它,而怎么实现我的计算功能。还是能不能在运行期动态地生成“计算字段”?
3、另外,听说用中文字段会引起程序的不稳定,是否是这样的,我没经验,也没测试过。
敬请哪位热心的耐心的高人、朋友指点,在此先十分感谢您!