程序目的是 先从一个表格中取出 物品id 和物品名称mc,然根据具id从表0中取出物品属性,再根据物品id从表1中取出物品的配送信息,写入excel,然后根据id从表2中取出物品的 部门信息,写入同一个excel 。然后循环到第二个id
    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.   

    你这一直循环开循环关连接的不怕出问题?为什么不都取出来一次性的插入到EXCEL里?
      

  2.   

    你这样频繁操作数据库,受不了啊,直接写sql
    select * from a join b on a.id=b.id
                    join c on b.id=c.id
      

  3.   

    id有100多个,要分别保存在excel中的啊。
      

  4.   


    一样的啊!你表连接查询去除100多个id的所有信息,一次性的插入到EXCEL里。
      

  5.   

    我需要对每个id的信息分别保存在不同的excel中
      

  6.   

    你帖子不是说同一个EXCEL么?保存在不同的EXCEL里,100个id就是100个EXCEL,1万个id就是1万的EXCEL,感觉真的没必要放不同的里面去,而且每个id的信息可能很少吧!
      

  7.   

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