Я бы хотел, чтобы моя программа могла устанавливать плагины и откатывать все внесенные изменения в случае возникновения ошибки. Поэтому я создаю транзакцию, которая хранит все, что было добавлено при установке плагина. Проблема в том, что плагин может захотеть создавать таблицы, и при этом автоматически фиксируется текущая транзакция в MySQL.
См. Заявления, которые вызывают неявную фиксацию на веб-сайте MySQL.
Есть идеи, как мне это сделать?
Я подумал об использовании временных таблиц, поскольку они не фиксируются автоматически, если только они не используют слишком много памяти, но похоже, что временные таблицы все равно нельзя откатить (и я не нашел способа преобразовать их в постоянные таблицы ).
Я только что узнал о " точках сохранения ", но я не совсем понимаю, как / когда его следует использовать, и может ли это помочь мне достичь того, чего я хочу.