У меня есть скрипт Python, говорящий с базой данных MySQL.
Этот скрипт работает отлично в течение нескольких месяцев.
Внезапно это ничего не добавляет к таблицам, которые он должен изменить.
В сценарии много операторов печати и обработчиков ошибок, и он по-прежнему работает точно так, как если бы он работал, но ничего не отображается в базе данных.
Он даже распечатывает "затронутые строки: 108" или что-то еще, но когда я смотрю на базу данных в phpMyAdmin, он говорит, что в таблице есть нулевые строки.
Единственное, что он сделает, это обрезать таблицы. В начале есть раздел, который обрезает соответствующие таблицы, чтобы сценарий мог начать заполнять их снова. Если я вручную создаю новую строку в таблице через phpMyAdmin, эта строка исчезнет при запуске скрипта, например, при правильном усечении таблиц. Но ничто после этого ничего не делает. Он по-прежнему работает без ошибок, но фактически не изменяет базу данных.
Спасибо, да, по какой-то причине сценарий больше не был автоматическим по умолчанию.
Я добавил "cnx.autocommit(True)", и он снова работает.