用Tabel or Query 的LOCATE
  假定你的FXM是字符串型,定位,修改如下。其它的类型只在在
   中间的转换成字符串放在中间的方括号中就行了。
   Table.Locate('FXM',VarArrayOf(['XIAOMING']),[]);
     table.edit;
     table.fieldbyname('fxm').asstring:='xiaohu';
       :
       :   
     table.post;

解决方案 »

  1.   

    我按照你说的做了,但是如果只输入一个字段进行定位,一运行就出现错误,比如:
       Table.Locate('FXM',VarArrayOf(['XIAOMING']),[]);
      运行后,立即出现错误提示:Invalid variant type conversion !
    如果输入两个字段进行定位就没有什么问题,比如:
       Table.Locate('FXM;fNL',VarArrayOf(['XIAOMING','20']),[]);请问是为什么,该如何解决 ??? 谢谢 !!!
      

  2.   

     以FXM字段定位不行是因为FXM不能唯一确定一个记录
    定位某条纪录看来只用FXM 字段不行
    你再考虑修改程序吧
      

  3.   

    Table.Locate('FXM','XIAOMING',[loCaseInsensitive]);
      

  4.   

    定位的问题已经解决,现在又出现了新的问题,请各位大师哥能再次赐教:
     对一个TABLE中的记录进行DELETE操作时,总是提示错误:
                       DATASET IS NOT IN EDIT OR INSERT !
    在此操作前,未对该TABLE进行过任何操作,关闭DELPHI,重新启动DELPHI后,问题依旧,请各位大师哥帮助分析原因。
    我的代码如下:
                 with table1 do
                   begin
                        edit;
                        delete;
                        post;
                   end;
    注:Table1 为DBF 库。
      

  5.   

    先加入一个table1.close;table1.open;再试试
      

  6.   

    Table1.Delete;就行了
    Delete  不需要EDIT和POST;