你用QUERY,使用SQL来判断不是很好吗?

解决方案 »

  1.   

    你能不能增加一个table_locate和table之间的同步操作.
      

  2.   

    同步好象是没有办法,但你可以先记下当前位置,LOCATE后在恢复回去,不过太麻烦了,我觉得还是用QUERY的好!
      

  3.   

    To jnww:1.我得数据还没有Post,用SQL恐怕不行,最好还是能同步;
            2.用Locate恢复的话就会发生上面所说的新纪录丢失现象,所以也不能用;
    To yijun2000:怎样进行这两个Table之间的同步?麻烦您再指点一下
      

  4.   

    locate会将记录指针移到查找到的记录上去,所以会发生你所说的新记录丢失现象
    试试下面的方法看是否可以
    1.为TAble中主键建立永久字段,如TAble1id
    2.在table1的beforepost事件中加入代码
     with tquery.create(self) do
       begin
          sql.databasename:='database';
          sql.add('select count(*) from tablename');
          sql.add('where id='+''''+table1id.value+'''');
          active:=true;
          if fields[0].value>0 then
             begin
                showmessage('相同的记录已存在');
                abort;                  //中止post动作.
             end;
       end;
    如还有问题请Mail至[email protected]