采用DBEdit进行如下操作是碰到的问题
新增Add
  ADOTable1.append;
修改Edit
  ADOTable1.Edit;
如果我先点击修改,把数据修改后再点击新增,数据库的那条记录就被修改了
要怎么解决这个问题?

解决方案 »

  1.   

    ADOTable1.Edit;
    只有用了ADOTable1.Post;后才算修改成功
    所以你点击新增的时候先运行ADOTable1.Post;
      

  2.   

    那就不要用Table,用query,先修改,然后最后统一提交
      

  3.   

    用ADOQuery觉得有点麻烦,所以用ADOTable和DBEdit组合的,可是每次Append前就会自动保存数据到数据库了,根本不需要post,如果我先点击修改按钮然后点击新增的时候数据库都已经更新了
    我学了一个月都不到,每次都要问实在是不好意思
      

  4.   

    Append前如果数据被修改的话 ADOTable会自动POST的,最后在Append前判断一下数据被修改没有,如果修改了让用户决定是否POST.
      

  5.   

    加程序中加两句话
    if cds.State = dsEdit then
        cds.Post;
      

  6.   

    gw_delphi(从容) :
      你可能不明白我的意思吧,不好意思,我说的不怎么清楚
      我是不想编辑后就保存,但是点击新增之前的记录要保存
      所以不好弄,现在我只能在点击编辑的时候禁用新增按扭了
      如果是 新增-->新增 这样的话,前面新增的要保存
      但是如果是 编辑-->新增 前面编辑的就不能保存了