Задать вопрос
@Stalder

Java JDBC. Как изменить значение поля?

Как по мне нижепредставленное решение всем хорошо, разве что за одним исключением. Оно не работает. В чем может быть ошибка?
public void writeResults(ArrayList<Integer> results, int firstID){

        try{
            connect();
            statement = connection.createStatement();
            resultSet = statement.executeQuery("SELECT * FROM pupils");

            for (int i = 0; i < results.size(); i++) {
                /*В таблице проходимся по ученикам и плюсуем им набранные баллы*/
                statement.execute("UPDATE 'pupils' SET score = score + "+results.get(i)+" WHERE id = " + firstID + i); //скорее всего косяк здесь 
                System.out.println("Я плюсую " + results.get(i)); // с массивом всё ОК, к нему не придраться
            }

            readDataBase();//выводим на экран все содержимое БД. Здесь и становится ясно, что нифига не работает :с

            closeDataBase();

        }catch(ClassNotFoundException e){
        }catch (SQLException e){}//здесь был вывод в консоль, но он не срабатывал => исключения связанного с SQL не было
    }
  • Вопрос задан
  • 1914 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 1
@Stalder Автор вопроса
В общем в конечном итоге я навыяснял, что зря взял в кавычки название таблицы, а также надо было использовать метод statement.executeUpdate(), и тогда в конечном виде это будет смотреться так:
statement.executeUpdate("UPDATE название_таблицы SET значение = новое значение WHERE id = id_строки");
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы