отметка времени last_update для каждой таблицы? - PullRequest
1 голос
/ 10 марта 2010

Полезно ли иметь метки времени для последнего обновления строки в каждой таблице?

Или их следует устанавливать только там, где это действительно необходимо? Как узнать, где мне понадобится метка времени обновления? Для какой информации они имеют смысл?

Ответы [ 4 ]

2 голосов
/ 10 марта 2010

временные метки строк используются для контроля версий строк в ситуациях, когда у вас оптимистическая блокировка записи; то есть 2 пользователя одновременно редактируют одну и ту же запись.

Вы можете определить, изменилась ли версия БД, изучив текущую временную метку строки с временной меткой, найденной при извлечении строки из БД.

1 голос
/ 10 марта 2010

Я думаю, что это скользкий путь, чтобы начать добавлять отметки времени «last_updated» в таблицы. Таким образом, у вас могут быть люди, спрашивающие "когда был изменен этот ряд?" но как только вы добавите столбец last_updated, они спросят: «Хорошо, это было изменено 6 дней назад. Что было изменено?». Итак, теперь вам нужно настроить таблицу «истории» со всеми измененными столбцами. Но затем они спрашивают: «Ну, столбец« foo »был изменен 6 дней назад, какое было предыдущее значение?» И теперь вы отслеживаете полную историю каждой строки во всей базе данных!

1 голос
/ 10 марта 2010

Лучше сохранить его в таблицах, используемых для сбора транзакций. Это может работать для ведения журнала / безопасности или может использоваться для обработки параллелизма.

0 голосов
/ 10 марта 2010

Я думаю, что реальный вопрос в том, для чего вы хотите использовать эти временные метки. Если ваше приложение не нуждается в этом, я не вижу веских оснований для хранения и поддержки этих данных.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...