不知道是不是这个意思,我这样猜想的,根据你说的意思
String sql1;
String sql2;
pstmt = conn.prepareStatement(sql1);
pstmtOther   = conn.prepareStatement(sql2+" field1=?"  );
rs = pstmt.executeQuery();
while(rs.next()) {
  do something;
  int i=rs.getInt(1);
  pstmtOther.setInt(1,i);
  rsOther= pstmtOther.executeQuery();
      while(rsOther.next()){
                do something;
                }
            }

解决方案 »

  1.   

    **********我说的问题是有关developer Cafe的**************
    我的第一个查询查出有关的人员编号(不止一条),
    后三个分别查这些人员对应的名称, 关键是我在循环中可以在weblogic里输出正确的结果,但是在我把数据返回给调用query的Form时,我的后三个查询只能返回最后一次查询的结果.
      

  2.   

    ****************部分代码如下***********************
    {form部分的代码}
    //set ClientRowSet Param
    public ClientRowSet rsMhstatus = new ClientRowSet();
    public ClientRowSet rsProxyName = new ClientRowSet();
    public ClientRowSet rsApp1Name = new ClientRowSet();
    public ClientRowSet rsApp2Name = new ClientRowSet();
    public ClientRowSet[] rsAll = {rsMhstatus,rsProxyName,rsApp1Name,rsApp2Name};
    private final static String QueryName =
            "jp.co.ite.application.query.APPAUT_MhStatusQuery";
    //调用Query
    this.getSession().getClientConnection().provideData(QueryName, rsAll);{query的部分代码}
    switch (index)
                {
                    case 0:
                        //セミナのプロバイド
                        provideRowSet.setActive(true);
                        break;
                    case 1:
                        //セミナ経験のプロバイド
                        provideRowSets[0].moveFirst();
                        for (int i=0;i<provideRowSets[0].getRowCount();i++)
                        {
                             provideRowSet.getParamSet().setValueAsString(
                                CMN_APP_ColConstant.PROXY_MANNO,
                                provideRowSets[0].getValueAsString(
                                CMN_APP_ColConstant.PROXY_MANNO));
                             provideRowSet.setActive(true);
                             provideRowSets[0].moveNext();                    }
                        break;
                    case 2:
                        //セミナ経験のプロバイド
                        provideRowSets[0].moveFirst();
                        for (int i=0;i<provideRowSets[0].getRowCount();i++)
                        {
                           provideRowSet.getParamSet().setValueAsString(
                                CMN_APP_ColConstant.APP1_MANNO,
                                provideRowSets[0].getValueAsString(
                                CMN_APP_ColConstant.APP1_MANNO));
                            provideRowSet.setActive(true);
                            provideRowSets[0].moveNext();
                        }
                        break;
                    case 3:
                        //セミナ経験のプロバイド
                        provideRowSets[0].moveFirst();
                        for (int i=0;i<provideRowSets[0].getRowCount();i++)
                        {
                            provideRowSet.getParamSet().setValueAsString(
                                CMN_APP_ColConstant.APP2_MANNO,
                                provideRowSets[0].getValueAsString(
                                CMN_APP_ColConstant.APP2_MANNO));
                            provideRowSet.setActive(true);
                            provideRowSets[0].moveNext();
                        }
                        break;
                }