2017-03-15 116 views
0

我是新來的Java,我試圖打印在表格沒有數據可用

Statement stmt=connection.createStatement(); 
    String sql ="INSERT INTO contacts(name,email)VALUES('ABC','[email protected]')"; 
    stmt.execute(sql); 
    ResultSet rs=stmt.executeQuery("SELECT*FROM contacts"); 
    while(rs.next()) 
    { 
    System.out.println(rs.getString("name")); 
    } 

的所有數據,並得到

Exception in thread "main" org.h2.jdbc.JdbcSQLException: No data is available [2000-173] 

回答

0

你需要調用rs.getString("...")之前調用rs.next()

... 
ResultSet rs=stmt.executeQuery("SELECT * FROM contacts"); 

while(rs.next()) { 
    System.out.println(rs.getString("name")); 
} 

如果你希望只排1,那麼你也可以這樣做:

... 
ResultSet rs=stmt.executeQuery("SELECT * FROM contacts"); 

if(rs.next()) { 
    System.out.println(rs.getString("name")); 
} 
+0

感謝幫助,它的工作,但爲什麼而沒有工作? – user5520049

+0

@ user5520049你沒有在你的問題中顯示任何'while'循環... –

+0

對不起,我忘了寫它,我用了,並有聯繫人 id是:id是:id是:id是:id是:id is:id is:id is:id is:id is:id is:id is:id is:id is:id is:id is:id is:id is:id is:id is:id is:id is: id is:id is:id is:id is:id is:id is:id is:id is:Exception in thread「main」org.h2.jdbc.JdbcSQLException:No data is available [2000-173] but i如果它工作,使用 – user5520049

相關問題