发帖再问:主从表的保存问题(我觉得好难解决,重分求解决啊),或者大家讨论讨论
数据库中问了很多主细表的问题,可是没有我满意的,现在还是不得不问啊。谢谢
我主表设置了关键字“单据编号”,从表用“单据编号”和主表关联起来,但是从表没有关键字,也就是说单据编号+货物编号可以为多条记录,在新增时,当主表的单据编号加入后,我现Post主表,然后再Edit主表,Edit细表,然后细表逐项增加数据,保存时却出错了,不知道是什么原因,我的做法如下:
try
ItemDataSet.Post; //保存之前先Post,如果出错,则不保存,置于编辑状态
MasterDataSet.Post;
MasterDataSet.Edit;
ItemDataSet.Edit;
except
Application.messagebox('数据保存失败!请检查编码是否重复,或稍后再试',p_msgTitle,MB_OK+mb_iconwarning);
MasterDataSet.Edit;
ItemDataSet.Edit;
Abort;
end;
如果都不出错,然后再如下:
if not DM.ADOConnection1.InTransaction then
begin
DM.ADOConnection1.BeginTrans;
try
MasterDataSet.updatebatch;
ItemDataSet.UpdateBatch;
DM.ADOConnection1.CommitTrans;
except
DM.ADOConnection1.RollbackTrans;
Application.messagebox('数据保存失败!请检查编码是否重复。',p_msgTitle,MB_OK+mb_iconwarning);
//raise;
//Abort;
end;
end
else
begin
Application.MessageBox('服务器忙请稍后再试!',p_msgTitle,MB_OK+mb_iconWarning);
end;
不知道是什么原因啊,在第一步细表Post的时候就出错,大家帮帮我找找原因。