***救助***如果ResultSet里选出的是数据库表中的某些字段,那么能否用deleteRow函数删除数据库中的一行呢

解决方案 »

  1.   

    我试过了,如果ResultSet里选出的是数据库表中的某些字段,可以用deleteRow函数删除数据库中的一行呢,但是不知道为什么,如果我想删除的是400条记录,但实际上只删了200条,即删除一半,不知到是不是我的程序的错误:
    那位高手帮我看看, 不胜感激://rs_inhere为数据库中已存在的记录结果集,rs_source_table为此次上传的记录结果集,参数keyfield 为此表的关键字段。程序的作用是:删除rs_inhere中与rs_source_table中关键字段相同的记录!for(int i = 0; rs_inhere.next();i++){
    boolean flag = false;
    String inhere_key_field_value = ((String)rs_inhere.getString(keyField)).trim();
    while(rs_source_table.next()){
    String source_key_field_value = ((String)rs_source_table.getString(keyField)).trim();
    //总是有一半相等一半不相等
    if(!inhere_key_field_value.equals(source_key_field_value)){
    flag = true;
    sameKeyFieldValue_count++;
    sameKeyFieldValue.add(source_key_field_value);
    rs_inhere.deleteRow();
    rs_source_table.beforeFirst();
    break;
    }
    }
    if(flag=false){
    rs_source_table.beforeFirst();
    }
    }
    rs_inhere.close();
    System.out.println("输出已删除的那些列个数:"+sameKeyFieldValue_count);