Выберите «Не обновлять новые результаты» [закрыто]JAVA

Программисты JAVA общаются здесь
Anonymous
Выберите «Не обновлять новые результаты» [закрыто]

Сообщение Anonymous »

Три недели назад я перенес базу данных Java-приложения с MySQL 5.7 на MySQL 8.
Мы адаптировали запросы, и примерно неделю назад все работало нормально. У меня есть цикл for, который выполняет SELECT для таблицы для получения целого числа (имейте в виду, что к этой части приложения обращаются из нескольких мест, поэтому это одновременная точка). Как только целое число получено, применяется некоторая логика, и целое число вставляется в другую таблицу. После успешной вставки целое число увеличивается на 1.
Пока все хорошо. Проблема возникает, когда последняя вставка завершается неудачей (это целое число является первичным ключом в другой таблице, поэтому я получаю ошибку дублирования ключа). На этом этапе процесс должен начаться с самого начала, то есть он должен снова выполнить SELECT для таблицы (которая должна иметь обновленное значение). Однако этого не происходит. Поток входит в бесконечный цикл, в котором он не извлекает текущие значения из базы данных, а продолжает извлекать исходные полученные.

Подробнее здесь: https://stackoverflow.com/questions/790 ... ew-results

Вернуться в «JAVA»