Я пытаюсь читать из таблицы тузда и я делаю следующее:Resultset.next возвращает истину, но не возвращает значение
protected void pushRegisteredStudentsData() {
try {
conn = (Connection) DriverManager.getConnection(DB_URL, USER, PASS);
stmt = conn.createStatement();
String userID = "SELECT * FROM STUDENT";
rs = stmt.executeQuery(userID);
while (rs.next()) {
int id = rs.getInt("ID");
this.studentID = id;
String insertSql = "INSERT INTO REGISTEREDSTUDENTS(StudentID, ModuleCode) VALUES ('" + studentID + "', + '"
+ this.moduleCode + "')";
System.out.println("Inserting into REGISTEREDSTUDENTS.. [" + id + "]" + "[" + this.moduleCode + "]");
stmt.executeUpdate(insertSql);
}
} catch (SQLException e) {
}
}
..а по какой-то причине,
while (rs.next()) {
int id = rs.getInt("ID");
всегда возвращает тот же ID, хотя таблица имеет разные ID на каждой линии!
Есть ли у кого-нибудь идеи, почему это может быть? Спасибо заранее! :(
EDIT: я с помощью одного оператора для выполнения 2 обновления, который вызывает проблемы
Пожалуйста, вставьте код непосредственно. Пробовал ли вы 'int id = Integer.parseInt (rs.getObject (1))' –
Является ли столбец идентификатора уникальным, то есть можно ли иметь несколько строк в таблице Student с тем же идентификатором? – DBug
Нет, поскольку я думал, что не хочу получить объект по абсолютной величине, но идти по строчке и читать дальше. @YassinHajaj – user3153278