请问,dbswing中的querydataset能不能直接调用自己的方法,去判断某列的是否重复呢?谢谢!

解决方案 »

  1.   

    eg:我想向一张表中插入一条或多条数据,现在数据表要求两列的数据信息是不能有重复的,所以,在用户要插入数据的时候,我们要判断用户输入的数据信息在数据表中是否存在。如果存在,提示用户重新输入,不存在,则向表中插入数据成功。
    这个要求,我用sql语句操作,已经成功,但是效率似乎不高,所以,我想在QueryDataSet中寻找一个可以直接判断用户当前插入的数据信息中是否有重复的。怎么做?谢谢!呵呵……
      

  2.   

    两列的数据不能重复?
    也就是说,如果数据表是id,col1,col2,col3,要求col1中的数据不能在col2中出现?这恐怕只能用sql了
      

  3.   

    不行的,因为就是sql中定义了Unique,所以界面就必须判断,否则只要重复就会抛异常的。我现在就是在找一个简单的方法去判断。呵呵……
      

  4.   

    那就用两个QueryDataSet
    一个查询,findQds;一个添加,currentQds;
    比如:table结构为id,col_1,col_2,其中col_1为unique
    findQds 的 sql 为 select col_1 from table where col_1 = :input
    currentQds 的 sql 为 select * from table
    用户录入后,先refresh findQds,如果为空,则可currentQds.insert;否则就不行笨办法,但是管用,呵呵……