但是我的第二个数据库连接就出现错误了。只有一个的时候是正确的

解决方案 »

  1.   

    没必要连两个数据库啊
    你可以建几个表,分别连一个数据库中的几个表啊
    e.g.<%@ page contentType="text/html; charset=GB2312" 
                  import="java.sql.*, java.util.Date, java.util.Random"%>
    <% session.setMaxInactiveInterval(60*120);%>
    <HTML>
    <HEAD>
    <TITLE>计算机综合能力考试</TITLE>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <BODY background="pic/back.gif">
    <CENTER>
      <FONT COLOR = #003366 SIZE = 5 face="华文行楷">计算机综合能力考试</FONT> 
      <FONT COLOR = #003366 SIZE = 5 >--</FONT>
      <FONT COLOR = #003366 SIZE = 3 face="隶书">
      <%
    String cone=null;
    int tkt=0;int xzt=0;int tk=0;int xz=0;
    cone=request.getParameter("R1");
    if(cone.equals("A")) {out.print("计算机基础知识");      tk=0;xz=0;tkt=10;xzt=20;}
    if(cone.equals("B")) {out.print("操作系统与OFFICE操作");tk=30;xz=40;tkt=39;xzt=60;}
    if(cone.equals("C")) {out.print("C语言程序设计");       tk=40;xz=10;tkt=50;xzt=30;}
    if(cone.equals("D")) {out.print("数据结构");            tk=3;xz=5;tkt=51;xzt=88;}
    if(cone.equals("E")) {out.print("数据库");              tk=0;xz=0;tkt=10;xzt=20;}
    if(cone.equals("F")) {out.print("硬件技术基础");        tk=0;xz=0;tkt=10;xzt=20;}
    if(cone.equals("G")) {out.print("计算机网络");          tk=0;xz=0;tkt=10;xzt=20;}
    String tk1=String.valueOf(tk);
    String xz1=String.valueOf(xz);
    session.setAttribute("tk", tk1);
    session.setAttribute("xz", xz1);
    %>
    </FONT> <br>
    <font color="#003366" size="4" face="隶书">姓名:</font><%
    byte[] talkTo_t;
    String talkTo_p;
    talkTo_p=request.getParameter("T1");
    talkTo_t=talkTo_p.getBytes("ISO8859-1");
    String talkTo1=new String(talkTo_t);String xh=request.getParameter("T2");
    String bj=request.getParameter("T3");
    String ksxs=request.getParameter("S1");
    %><U><%=talkTo1%></U><%session.setAttribute("tit", talkTo1);
      session.setAttribute("xh", xh);
      session.setAttribute("bj", bj);
    %>
    <font color="#003366" size="4" face="隶书">学号:</font><U><%=xh%></U>
    <font color="#003366" size="4" face="隶书">班级:</font><U><%=bj%>班</U> 
    </CENTER>
    <HR><%!
    Connection con = null; 
    Statement stmt = null;
    ResultSet rs = null;public void jspInit()
    {
    try{
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

    con = DriverManager.getConnection("jdbc:odbc:EXAM");

    stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
       ResultSet.CONCUR_READ_ONLY);
       }
    catch(Exception ex)
       {
    System.out.println(ex.toString());
       }
    }
     
    public void jspDestroy() 
    {
    try{
    rs.close(); 
    stmt.close(); 
    con.close();
           }
    catch(Exception ex)
       {
    System.out.println(ex.toString());
       }
    }
    %><%if(ksxs.equals("1"))
    {
    %>
    <FORM action="result.jsp" method=post name=FORM1><%} 
    else 
    {%> 
            <FORM action="into.jsp" method=post name=FORM1><%}%>
      <%
            String strSQL="SELECT * FROM EXAM_"+cone;       
     
    rs = stmt.executeQuery(strSQL);

    boolean chcQus[] = new boolean[100];

    int i = 1;

    Random Rnd = new Random();
     
    String strQNum = ""; 

            %>
      <B><font color="#6F2400">一、选择题(每题1分,共10分)</font></B><BR>
      <%
    while(i <=xz)
    {
    int chcNum = Rnd.nextInt(xzt) + 1; 

    if(chcQus[chcNum - 1] != true) 
    {
    chcQus[chcNum - 1] = true;

    rs.absolute(chcNum); 

    String Ans = rs.getString("Ans");
    String Qus = rs.getString("Qus");
    String Opt = null; session.setAttribute("Ans" + i, Ans);

    session.setAttribute("Qus" + i, Qus);
    %> <FONT  COLOR = DarkBlue>
                            <%= i %>.
            <%= Qus%></FONT>
                            <BR>

                            <%
    for(int j = 1; j <= 4; j++)
    {
    Opt = rs.getString("Opt" + j);

    if (Integer.parseInt(Ans) == j)
    session.setAttribute("RghOpt" + i, Opt);
    %>
    <INPUT type="radio" name=rdoQ<%= i%> value=<%= j %>>
    <%= Opt%><br>
    <%
    }
    i = i + 1; 
    %><P></P>        <%
    }
    }
    %>
    <%String stSQL="SELECT * FROM EXA_"+cone;       
     
    rs = stmt.executeQuery(stSQL);

    boolean chQus[] = new boolean[100];

    int x = 1;

    Random Rnd1 = new Random();
     
    String stQNum = ""; 

            %>
      <B><font color="#6F2400">二、填空题(每题1分,共40分)</font></B><BR>
      <%
    while(x <=tk)
    {
    int chNum = Rnd1.nextInt(tkt) + 1; 

    if(chQus[chNum - 1] != true) 
    {
    chQus[chNum - 1] = true;

    rs.absolute(chNum); 

    String Ans = rs.getString("Ans");
    String Qus = rs.getString("Qus");
    String Opt = null; session.setAttribute("Ans" +xz+x, Ans);

    session.setAttribute("Qus" +xz+x, Qus);
    %> <FONT  COLOR = DarkBlue>
                            <%= x %>.
            <%= Qus%></FONT>
                            <BR>
    答:<INPUT type="textarea" name=text<%=x%> size=30>
    <br>
    <%
    x = x + 1; 
    %><P></P>        <%
    }
    }
    %>
    <INPUT type="button" value="交  卷" name="submit1" onclick="bye()">
    </FORM>
    <script language="javascript">
     
    function bye() 
    {
    question = confirm("你确认要交卷了吗?");
    if (question != "0")
                    {
      document.FORM1.submit();
    }}</script></BODY>
    </HTML>这是我以前写的,看看兴许有用。另外,连两个数据库也是可以的,好好检查一下吧,或发给我看看:[email protected]