二,当用DBgird修改记录,然后应该调Post进行保存吧?

解决方案 »

  1.   

    对于Tquery,close后open;
    第二个问题看不明白。
      

  2.   

    一、某些数据库不支持TAble.refresh;
    二、只有很少的数据库支持用Query修改其内容再回存,劝你还是使用Table吧,注意要将cacheupdates设置为True;
      

  3.   

    这种情况好象要把tquery的requestlive属性改为true吧
      

  4.   

    1.query的刷新要先Close后Open;如果需要再用locate重新定位
    2.不知道
      

  5.   

    一、使用Tquery时,使用close然后open比较保险!
    二、使用Dbgrid修改记录后,移开焦点时,DELPHI自动会保存!显式保存用post。
      

  6.   

    建一个primary key或者unique key
      

  7.   

    谢谢各位,我的第二个问题自己已经解决。
    致:wolfop:我的table已经建立了唯一性索引,为什么还不行;
    致:pjy,cybercorba,zsr:对于数据量很大时,这样是很慢的,一般不能满足速度要求;
    致:lotto:我用的是oracle,而且我同事的refresh(三层结构)可以用,而我们用同一个数据库,我的就是不行。
      

  8.   

    我知道用tquery先close再open比较慢,但我试过refresh方法,好象不行!wai_lf如果解决,请通告一声!
    还有:对于refresh方法,DELPHI会只把不同的记录加入前台吗?我估计DELPHI运行和先CLOSE,再OPEN机制是一样的!请各位网友指点!
      

  9.   

    1) 在表里加一个 自己动记数字段就可以 refresh 了! 名字随便
    2) 我也想知道, 我用 ODBC 连 Access 和 AS/400 时也不能修改.(can't modify a read-only dataset) 有谁知道了, 也请告诉我解决方法.(必须用 ODBC 和 TQuery)