2017-01-02 11 views
-1
package database; 

import java.sql.*; 


public class MysqlCon { 

    public static void main(String[] args) { 
     // TODO Auto-generated method stub 
try{ 
    Class.forName("com.mysql.jdbc.Driver"); 
    Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/neha","root","root"); 

    Statement stmt=con.createStatement(); 
    ResultSet rs=stmt.executeQuery("select * from student"); 
    while(rs.next()); 
    System.out.println(rs.getInt(1)+" "+rs.getString(2)); 
    con.close(); 
} 
catch(Exception e) 
{ 
    System.out.println(e); 
    } 
    } 

} 
+0

ます。java.sql.SQLExceptionに動作します:結果の最後に –

+1

を設定した後、あなたは 'を持っている;'すぐに、しばらくして、そのコードが何をあなたは行いませんそれはそうだと思う。これはまた、一貫したインデントと常にブロックの使用が推奨される理由です。タイプミスとしてクローズする投票。 –

答えて

0

while(rs.next());を実行して全体の結果セットを反復しているという問題があると考えてください。

-2

はこれを試してすべてのレコードを反復処理するためにセミコロンを削除します。

try{ 
     Class.forName("com.mysql.jdbc.Driver"); 
     Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/neha","root","root"); 

     Statement stmt=con.createStatement(); 
     ResultSet rs=stmt.executeQuery("select * from student"); 
     while(rs.next()){ 
     System.out.println(rs.getInt(1)+" "+rs.getString(2)); 
    }  
    con.close(); 
    } 
    catch(Exception e) 
    { 
     System.out.println(e); 
     } 
     } 

    } 
+1

コードをダンプしたり、何が間違っていたり、あなたのコードがそれに対処する方法を説明しないでください。 –

1
while(rs.next()); 

をその行が結果セット全体を通過すると(理由文を終了セミコロン)それについて何もしていません。次のコード行は、次の項目を持たない結果セットで実行されるため、失敗します。

その行にセミコロンを削除し、それが

関連する問題