У меня есть столбец Quantity
в таблице Inventory
MySQL, который обновляется из нескольких источников. Мне нужно было сохранить дорожку в таблице в другом столбце под названием QuantityLog
в последнее обновленное время Quantity
и источник, который сделал это. Что-то подобное должно быть содержание QuantityLog
колонки (типа Text) (только последние детали обновления требуется):Источник и время обновления столбца в MySQL
<Log>
<UpdateTime>2015-02-23 12:00:01 PM</UpdateTime>
<Source> Feeder application</Source>
</Log>
Я знаю, как сделать это с помощью триггера, если требуется только время обновления. Однако с помощью триггерного подхода есть ли какой-либо другой механизм, чтобы получить источник и использовать его тоже?
Обратите внимание, что я пытаюсь выполнить это с помощью триггеров только в том случае, если любые другие механизмы использования моего приложения для этого потребуют от меня изменения во всех приложениях, которые вносят это изменение, и я не склонен это делать.
Если вы храните метку времени в той же таблице, вы можете добавить столбец с предложением ON ONDATE CURRENT_TIMESTAMP', которое будет автоматически обновляться при каждом обновлении строки. Вам не понадобится триггер, и вам также не потребуются изменения каких-либо приложений (если ваше приложение не использует 'select *' и не работает в дополнительном поле, но это было бы неплохо исправить в любом случае). См. [Инициализация временной метки] (https://dev.mysql.com/doc/refman/5.0/en/timestamp-initialization.html). – GolezTrol