"SELECT * FROM im_cl_list_rel_opera "(引号前加个空格)
 +"where cl_id="
          + i );

解决方案 »

  1.   

    to:bhr(追风)
    谢谢,哪个问题已经解决。现在又有个问题:就是语句的打开和关闭问题。
    因为主从查询,可是主表才查了一条记录,就提醒:
    java.sql.SQLException: ResultSet is closed
    怎么办啊?
      

  2.   

    你是不是这个时候重新使用了statement或者关闭了连接什么的?
    代码帖来看看
      

  3.   

    你可能是还没有查询完就把ResultSet关掉了。
      

  4.   

    有一个类似的问题:
     
        以下是我的源程序:(所出的问题在帖子上)        Connection conn = getMyConnection();
            conn.setAutoCommit(false);        sql="insert into mytable values(?,?,?)";        PreparedStatement ps = conn.prepareStatement(sql);
            ps.setInt(1,sp.getmy_id());
            ps.setDate(2,sp.getmy_date());
            ps.setTime(3,sp.getmy_time());
            ps.executeUpdate();
            conn.commit();
            ps.close();   帮我解决一下这个问题 :)   http://www.csdn.net/expert/topic/971/971598.xml?temp=.1206781
      

  5.   

    ResultSet rs1=(***)
    ResultSet rs2=(***)
    ResultSet r2 = s.executeQuery(
              "SELECT * FROM im_cl_list_rel_opera"
     +"where cl_id="
              + i );
    rs2.close();
    rs1.close();
    主要是注意后面两个close()的位置,一定要放到最后!!!
      

  6.   

    r1和r2是不是用同一个Statement定义的啊?如果是,应改为两个。
    因为每个Statement对象在任何时刻只能激活一个SQL命令。像你这样要在处理上一查询结果的同时进行新的查询,要在两个Statement对象中发出两个查询。
      

  7.   

    不知道我理解的是不是正确,好象查询出的值不能做为where的条件吧!
      

  8.   

    我已经把主从查询做出来了。问题在应该定义两个Connection对象,好像一个Connection只能支持一个Statement对象,所以在主从查询中,最好吧Connection,Statement对象各定义
    两个。另外,liuhai_2599(大海)说的不能作为where子句的说法不对,完全可以把第一个查询的结果当成参数传到另一个查询中。
    最后感谢bhr(追风)namowen(寒号不已) maple92(枫三位大虾。