Пытаюсь спроектировать БД, для некоторых таблиц которой важно отслеживать все изменения и сохранять старые данные..
Например, имеется таблица `users`:
CREATE TABLE `users` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`login` varchar(255) NOT NULL,
`password` varchar(255) NOT NULL,
`f_name` varchar(255) NOT NULL,
`l_name` varchar(255) NOT NULL,
`s_name` varchar(255) NOT NULL,
`email` varchar(255) default NULL,
`date_modify` datetime default NULL,
UNIQUE KEY `login` (`login`),
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
| 1 | admin | Васильев | 2010-12-09 12:00:39 |
| 2 | beemn| Пчелкин | 2010-12-09 12:00:39 |
| 3 | admin | Иванов | 2010-12-25 11:00:39 |
НО ТОГДА ПОЛЕ `login` НЕ ПОЛУЧИТСЯ СДЕЛАТЬ УНИКАЛЬНЫМ.. и на уровне БД не будет гарантии несовпадения логинов..
Как мне подружить уникальность и хронологию?
Спасибо.