每条数据循环匹配或存为物理表的方法就免了,注意:是查询,不是物理表。

解决方案 »

  1.   

    如果只是判断是否有重复记录
    select distinct
    select
    比较两个的记录条数
      

  2.   

    不知道你是像判断所有字段还是某个字段
    如果是所有字段,你为什么不加上主键,这样永远不会有相同的记录
    如果是某个字段,可以选择两次,一次是select,一次是select distinct 然后判断两次的记录总数是否相等就可以了
      

  3.   

    判断是不重复,只是前提,说后面的吧即然你己经QUERY出来了不用循环那用什么?要是相同记录只要一条的话可以 distinct 方法
      

  4.   

    对不起,朋友们,是我没有说清楚,这个Query的内容是用户输入的,不是下载出来的,所以要在保存前审核一下是否用户输入了重复的纪录,只判断一个字段即可,我目前是用保存书签循环匹配的方法来审核,又没有更好的方法啊?
      

  5.   

    那如果是主键,你可以try提交,如果成功标示没有重复,如果失败大多数情况是重复,当然,要排除你的数据库连接(远程),互斥(多客户端)等问题。如果不是主键,拿重复应该没有什么吧,提交就提交了,呵呵
      

  6.   

    俺也没没明白意思,不知道是不是象下面这样简单
    sql:='select count(*) from tname where ***=用户输入'
    if query(sql)>0 then
      begin
        showmessage('该条记录已经存在')
      end;
    else begin
      showmessage('无此记录,可以插入')
    end;
      

  7.   

    select field1,count(*) as sl
    from table
    group by field1
    having sl>1
    field1为你要查询的是否有重复的字段