2017-01-28 20 views
-1

2番目の結果セットからデータを取得していないJDBC(NetBeans IDE 8.1で動作)でこのコードを使用しています。それは私を提供する出力があるJDBCの結果セット関連

protected void processRequest(HttpServletRequest request, HttpServletResponse response) 
     throws ServletException, IOException { 
    response.setContentType("text/html;charset=UTF-8"); 
    Connection conn= null; 
    Statement stmt1= null; 
    Statement stmt2= null; 
    try (PrintWriter out = response.getWriter()) { 
     out.println("<!DOCTYPE html>"); 
     out.println("<html>"); 
     out.println("<head><title>Servlet test_servlet</title>"); 
     out.println("<link href=\"http://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css\" rel=\"stylesheet\">"); 
     out.println("<script src=\"https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js\"></script>"); 
     out.println("<script src=\"http://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js\"></script>"); 
     out.println("</head><body>"); 
     out.println("<div class=\"container-fluid\">"); 

     //Register Driver 
     out.println("<h5>Trying to register</h5>"); 
     Class.forName("oracle.jdbc.driver.OracleDriver"); 
     out.println("<h5>Registered successfully</h5>"); 

     //Open a connection 
     out.println("<h5>Trying to connect to the XE database...</h5>"); 
     conn=DriverManager.getConnection("jdbc:oracle:thin:@Toshiba:1521:xe","SYSTEM","oraclee"); 
     out.println("<h5>Connected Successfully</h5>"); 

     //Executing queries 
     stmt1=conn.createStatement(); 
     stmt2=conn.createStatement(); 

     String [] subj=new String[5]; 
     int i=0; 
     ResultSet rst1=stmt1.executeQuery("select * from TESTINGTABLE"); 
     while(rst1.next()){ 
      //int numb=rst.getInt(1); 
      subj[i]=rst1.getString("E_NAME").toString(); 
      out.println("Hello "+subj[i]); 
      out.println("<br>"); 
      i++; 
     } 
     rst1.close(); 

     ResultSet rst2=stmt2.executeQuery("select * from TESTTABLE"); 
     while(rst2.next()){ 
      String antt=rst2.getString(1).toString(); 
      out.println("Hi "+antt+"<br>"); 
     } 
     rst2.close(); 
     out.println("<h5>Result set object closed</h5>"); 
     stmt2.close(); 
     stmt1.close(); 
     out.println("<h5>Statement object closed</h5>"); 
     conn.close(); 
     out.println("<h5>Connection object closed</h5>"); 
     out.println("</div>"); 
     out.println("</body>"); 
     out.println("</html>"); 
    }catch(SQLException se){ 
     se.printStackTrace(); 
    }catch(Exception e){ 
     e.printStackTrace(); 
    } 
} 

Trying to register 
Registered successfully 
Trying to connect to the XE database... 
Connected Successfully 
Hello Joe 
Hello Chris 
Hello James 
Hello Eve 
Hello Thomas 
私が書いたコードを以下に貼り付けられ

........いくつかの答えを経ていないが、今まで何の解決しようとしています

2番目の結果セットのデータが表示されません。

私はこのプログラムで使用しています二つのテーブルは以下の通りである:

1> TESTINGTABLEはその中の5つの値 ジョー、クリス、ジェームズ、イブ、トーマス

で1列のみ(E_NAME)を有します2> TESTTABLEが マリアムこの行に

+0

として、SQLクエリの最後の'を削除しようか?つまり、stmt1がTESTTABLEから選択した場合です。 –

+0

あなたの質問を編集して、よりわかりやすいタイトルと、印刷された例外をすべて記入してください。 –

+1

'' select * from TESTTABLE '"'の最後にある '' 'がエラーを引き起こすことは間違いありません。あなたは例外を持つスタックトレースを持っているべきです –

答えて

2

における1つの値と1つの列のみ(E_NAME)を有する:

ResultSet rst2=stmt2.executeQuery("select * from TESTTABLE'"); 
                 ^-- here 

は、あなたが最初にTESTTABLEから選択した場合、それはマリアムを返すんこの

ResultSet rst2=stmt2.executeQuery("select * from TESTTABLE"); 
+0

それでも 'Mariam' –

関連する問題