Могу ли я иметь столбец, способный хранить все типы в MySQL (MariaDB)?
У меня есть несколько таблиц, для которых я хочу предложить полную историю изменений для всех строк. Реализация грубой силы будет заключаться в создании теневой таблицы (т. Е. Теневых таблиц, имеющих настройки столбца, идентичные настройке столбца для обычной таблицы) для каждой обычной таблицы, куда идут старые записи, и сохранении только самой последней записи в обычной таблице.
Но я хочу сделать это немного эффективнее. Я хочу иметь одну таблицу, сохраняющую все поправки для всех таблиц. В самом основном его столбцы будут table, column, value
, Когда строка изменяется в таблице, старое значение измененного столбца вставляется в эту таблицу.
Проблема с этой новой реализацией заключается в том, что столбец значений должен быть способен хранить все типы, поскольку разные столбцы имеют разные типы.
Есть ли способ создать столбец, способный хранить все типы?
Я использую MariaDB 10.0.3 на коробке Debian Wheezy.
1 ответ
MariaDB имеет возможность хранения столбцов в строке. Они могут быть произвольного типа. Может ли это удовлетворить то, что вы пытаетесь достичь? Проверьте https://kb.askmonty.org/en/dynamic-columns/. Я не использовал это лично.