Я хотел бы сохранить все изменения в моих таблицах (в MySQL). Я создал таблицу «audit» для отслеживания всех изменений всех таблиц в одной таблице (поэтому мне не нужно создавать таблицы аудита для каждой таблицы).Триггеры Mysql: OLD и NEW как строка/xml/параметр?
Затем я создал триггеры для каждой таблицы и хранимую процедуру, которая вставляет запись в таблицу аудита. Параметры хранимой процедуры - это имя табло и первичный идентификатор. Теперь я могу отслеживать даты вставки/обновления/удаления для каждой записи в моей базе данных.
Но я также хотел бы проследить все изменения в DATA с помощью этой процедуры. Для этого мне пришлось бы найти способ использовать записи OLD и NEW из триггеров в хранимой процедуре.
Кто-нибудь знает, как это сделать? Возможно, какая-то сериализация записей OLD и NEW в строку?
Не можете ли вы просто передать значения в соответствии с процедурой, как обычные аргументы? – DrColossos
Я мог бы, но тогда мне пришлось бы писать разные хранимые процедуры для всех моих таблиц, а в некоторых таблицах было более 50 столбцов. Поскольку я использую только 1 таблицу для ведения журнала аудита, я подумал, что было бы неплохо, если бы я мог передавать OLD и NEW в качестве параметра .... но это невозможно, насколько я вижу ... – Dylan