我在表中有很多行,我在我的數據庫上運行了相同的查詢,這是MySql,但java ResultSet只是給出表的第一行。這是我的代碼。雖然表中有很多行,但JDBC ResultSet只給出一行?
public ArrayList<String> getAllAlbumsName(Integer uid) {
ArrayList<String>allAlbumsName = new ArrayList<String>();
try {
String qstring = "SELECT albumname FROM picvik_picture_album WHERE " +
"uid = '" + uid + "';";
System.out.println(qstring);
connection = com.picvik.util.MySqlConnection.getInstance().getConnection();
ptmt = connection.prepareStatement(qstring);
resultSet = ptmt.executeQuery();
if(resultSet.next()) {
System.out.println(resultSet.getString("albumname"));
allAlbumsName.add(resultSet.getString("albumname"));
}
resultSet.close();
ptmt.close();
connection.close();
} catch (Exception e) {
e.printStackTrace();
}
return allAlbumsName;
}
這將是相當困難得到的東西多於一個沒有環。 –
SQL注入警報! – BalusC
@Brian你總是可以手動「展開」所有的循環。 –