select bj,tea_name,subject from bj,teacher,subject where bj.class_id in (1,2,3)IN里面是变量(数组)的话需要怎么做啊

解决方案 »

  1.   

    declare @str varchar(100)
    set @str='1,2,3'
    exec ('select bj,tea_name,subject from bj,teacher,subject where bj.class_id in ('+@str+')')
      

  2.   


    在JSP中把数组值一个个写到括号里?
      

  3.   

    是取前一个页面的值,这样吧。我把取值部分代码发上来,大家帮我看看
    <%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
    <%@ page import="com.DataBaseBean" %>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>无标题文档</title>
    </head>
    <%
       String bj[]=request.getParameterValues("class");
        String teacher=request.getParameter("tea");
    String subject=request.getParameter("subject");

    int   m=java.lang.Integer.parseInt(teacher);
    int   k=java.lang.Integer.parseInt(subject);
    DataBaseBean db = new DataBaseBean();
        Connection conn = db.getconnection();
    Statement stmt = null;
    ResultSet rs = null; try {
    for(int ii=0;ii<bj.length;ii++){
    // 创建数据记录集对象:
    stmt = conn.createStatement();
    System.out.print("-----------------------------------------------------------------"+bj[ii]);
    // sql语句:
    String sql1  = "select bj,tea_name,subject from bj,teacher,subject where teacher.tea_id='"+m+"' and subject.sub_id='"+k+"' and bj.class_id in ('"+bj[ii]+"')";// 执行sql语句:
    // 执行sql语句,返回一个记录集到rs:
    rs = stmt.executeQuery(sql1);
    System.out.print(bj[ii]);
    while (rs.next()) {
    String bj_id = rs.getString("bj");
    String subi = rs.getString("subject");
    %>
    <table width="200" border="0">
      <tr>
        <th scope="col"><%=bj_id%></th>
        <th scope="col"><%=subi%></th>
      </tr>
    </table>
          
                  <%}
    rs.close();
    stmt.close();
    }
    } catch (Exception e) {
    e.printStackTrace();

    }
      //  response.sendRedirect("tea_sub2.jsp");
         %>
    <body>
    </body>
    </html>
      

  4.   

    去掉‘
    String sql1  = "select bj,tea_name,subject from bj,teacher,subject where teacher.tea_id='"+m+"' and subject.sub_id='"+k+"' and bj.class_id in ("+bj[ii]+")";// 执行sql语句: