用database控件解決
只用query控件,主表in_hd,從表in_de,關連字段 in_no, 用 database連接數據庫
單頭檔(主表)sql: select * from in_hd
單身檔(明細表)sql: select * from in_de where in_no=:in_no
在新增時用append添加主表,則從表會自已添加(利用dbgrid的自動添加明細記錄的功能
in_de的beforepost事件:
qy_in_de.fieldByName('in_no').asstring:=dbedit1.text; //edit1為主表 in_no
存檔按妞的事件:
qy_in_de.applyupdates; //先存子表
qy_in_de.commitupdates;
qy_in_hd.applyupdates;
qy_in_hd.commitupdates;
database.commit;
以上是主要的程序代碼,delphi4+paradox通過,請細看Tquery 更新數據的介紹.