Хотя (ResultSet.Next () пропускается после первого входа в столбец, не возвращая никаких данных - PullRequest
0 голосов
/ 19 мая 2019

Попытка заполнить HashMap записями из базы данных derby JavaDB, в то время как (rs.next () пропускает после первой записи в столбце

Я попытался изменить номер столбца на имя столбца, изменив запрос ResultSet, строку подключения.

HashMap<String, Student> students = new HashMap();
    try
    {
       Connection conn = DriverManager.getConnection("jdbc:derby://localhost:1527/AceDrivingSchool", "ADC", "ADC");
       Statement stmt = conn.createStatement();
       ResultSet rs = stmt.executeQuery("SELECT * FROM ADC.STUDENT");

       while(rs.next())
       {
           String studentId = rs.getString(1);
           String emailAddress = rs.getString(2);
           String forename = rs.getString(3);
           String surname = rs.getString(4);
           String addressLine1 = rs.getString(5);
           String addressLine2 = rs.getString(6);
           String postcode = rs.getString(7);
           String telephoneNo = rs.getString(8);
           String getGender = rs.getString(9); 
           char gender = getGender.charAt(0);
           String password = rs.getString(11);
           boolean isRegistered = rs.getBoolean(12);
           boolean isVerified = rs.getBoolean(13);
           boolean passedTheory = rs.getBoolean(14);
           boolean passedPractical = rs.getBoolean(15);
           String drivingLicenseNo = rs.getString(16);

           new student  //summary 

           students.put(emailAddress, student);



       }
       conn.close();
    }
    catch(Exception ex)
    {
        String message = ex.getMessage();
    }
    return students;
}

переменные должны отображать соответствующие данные, считываемые из базы данных

...