以下是一段示例程序,在gettable函数中,读取数据库的值,然后对于type为1的值,调用updateStatus来更新type值。不知道这样是否可以,由于无法测试,请各位帮忙看一下,多谢!
    public int gettable(ArrayList vRows)
    {
     Statement statement=null;
     ResultSet resultSet=null;
     String query;     try
     {
     query = "select * from table";     statement = connection.createStatement();
     resultSet = statement.executeQuery(query);
     DataModel model = null;
     while (resultSet.next())
     {
     model = new DataModel();
     String str1 = resultSet.getString(1);
     model.setid(str1);
     String str2 = resultSet.getString(2);
     model.settype(str2);
     
      if("1".equalsIgnoreCase(model.gettype()))
      {
          updateStatus(model);
/////////////////////查询的statement没有关闭的情况下,做更新
          continue;
      }
     
      vRows.add(model);
     }
     }
     catch(Exception sqlex)
     {
    System.out.println(new java.util.Date());
    sqlex.printStackTrace();
}
     finally
     {
    closeResultSet(resultSet);
    closeStatement(statement);
     }
     return 0;
    }    public void updateStatus(DataModel model)
    {
     PreparedStatement statement = null;     try
     {
     String update ="update table  set TYPE ='2' WHERE ID = ?";     statement = connection.prepareStatement(update);
     statement.setString(1, model.getid());
     statement.executeUpdate();
     }
     catch (Exception sqlex)
     {
       System.out.println("************"+new java.util.Date()+"************");
       sqlex.printStackTrace();
     }
     finally
     {
     closeStatement(statement);
     }
    }