ADOQuery3.Edit ;        
        ADOQuery3.FieldByName('结帐时间').AsDateTime:=date;
        ShowMessage(datetostr(date));
        ADOQuery3.UpdateRecord;
  ShowMessage(datetostr(date));的结果是当前时间,可是我到数据库去看了一下,发现还没有更改成功!
请问这是怎么回事啊,还有ADOQuery3.UpdateRecord;        ADOQuery3.UpdateRecord ;        ADOQuery3.UpdateStatus ;他们之间有什么区别啊

解决方案 »

  1.   

    ADOQuery3.Edit ;        
    ADOQuery3.FieldByName('结帐时间').AsDateTime:=date;
    ShowMessage(datetostr(date));
    ADOQuery3.Post;
      

  2.   

    只有在调用Post方法后才会把你所INSERT,EDIT或UPDATE的记录真正发生变化。
    关于UpdateRecord看看HELP先:Ensures that data-aware controls and detail datasets reflect record updates
    它只不过是把数据感知组件如DBGrid里的数据更新,与数据库里的数据一致而已!
      

  3.   

    必须调用Posr才行,因为它是数据库的更新方法,UpdataRecord是更新显示的,与它无关。
      

  4.   

    楼上的都对,POST才是数据库提交,而update只是记录更新,没有提交上去