Как "в ручную" правильно организовать ведение истории в базе данных user1:
Добрый день, уважаемые форумчане. Может быть подобная тема и была, - честно искал, но найти не смог.
Вопрос.
Есть база данных Access в связке с Дельфи. Мне нужно организовать историю:
- ввода всех элементов - текстовые поля, ричэдиты, списки и прочее
- изменение столбцов таблиц базы данных с указанием времени и кто и когда и что делал
- история работы пользователей.
Я вижу это пока так.
История ввода элементов
для однотипных элементов завести таблицу, типа
THistEdit (HEid / HEDatetimestart / HENameEdit / HEUser / HEText / HEComment )
То есть хранить время, имя элемента, пользователя и значения введенного поля, а потом выбирать по запросу.
История работы пользователей - похожая таблица, как для элементов - только для пользователя: "дата, когда вошел, вышел и что-нибудь еще."
А вот с историей изменения столбцов в таблицах сложнее. Я думаю сделать так
- код
- имя таблицы
- имя стобца
- дата время изменения
- значение
А потом делать выборку по паре таблца столбец.
Второй вариант. Создавать еще одну таблицу, например, "Работники" - "ИстоиряРаботники" и в нее писать все изменения, по приведенному выше типу только по таблице "Работники". То есть - множить число таблиц истории соответственно числу рабочих таблиц.
Эффективно ли это? Какие еще есть варианты? Подскажите, возможно есть какие-нибудь стандартные средства, А я не знаю?