程序目的是 先从一个表格中取出 物品id 和物品名称mc,然根据具id从表0中取出物品属性,再根据物品id从表1中取出物品的配送信息,写入excel,然后根据id从表2中取出物品的 部门信息,写入同一个excel写完关闭excel 。然后循环到第二个id写入第二个excel
  try
  { 
  connectSQL con=new connectSQL();
  ResultSet r=con.executeQuery("select id,mc from daima");
  while (r.next())
  {
  **获取id和mc**
String sqlstr0="select name from table0 where id="+'id'+" ";
ResultSet r0= con.executeQuery(sqlstr0);
while (r0.next())
  {  
String sqlstr1="select * from table1 where id="+'id'+" ";
  ResultSet rss= con.executeQuery(sqlstr1);
  while (rss.next())
  {   
  }
  rss.close();   
String sqlstr2="select * from table2 where id="+'id'+" ";  
  ResultSet rs= con.executeQuery(sqlstr2);
  while (rs.next())
  {     }
  rs.close();
}r.close();
  }catch(Exception e)
  {
  System.out.println(e);
  }
  }

解决方案 »

  1.   

    应该是可以的,不过别这么嵌套吧,能用sql直接得到就用SQL
      

  2.   

    恩,回去试一下,直接按顺序在sql语句中读出序号
      

  3.   


    一个月大概只要取一次数据,一般最多就200个id,由于业务需求么,需要统计每个产品需要的信息,提交不同的部门统计,必须得分开。不同产品对应的信息条数也不一样,可能是几百条也可能10条不到。我上面说的同一个excel指的是,取出id后需要用该id读取两类不同信息,这两类需要放在同一个excel中。而且第二类信息要接着写在第一类信息下面。功能我是实现了,就是不知道为什么,我取3个id的时候中间的那个id没有数据,另外两个都是对的