Я создаю веб-сайт, который будет обновляться сообщениями авторов, комментариями и т. Д. И т. Д., И мне интересно, как лучше создать идентификатор, чтобы предотвратить дублирование в любом из таблиц. Я использую метку времени в данный момент вместе с уникальным номером, в конце концов, как:ИД базы данных MySQL
$time = time();
$id= time().'-'.mt_rand(1000, 9999);
Для выхода:
1378291391-1167, 1378294733-8990, 1378294934-3336 и т.д., и т. д.
Может ли кто-нибудь увидеть проблему с этим типом системы создания идентификатора?
Да, случайные числа не гарантируется уникальный –
Это звучит как XY-проблема. http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem - пожалуйста, объясните, почему вам нужно, чтобы идентификаторы были уникальными по нескольким таблицам, и мы расскажем вам, почему это плохая идея. – Halcyon
Почему идентификатор должен быть глобально уникальным? 'foo.id',' bar.id' и т. д. ... глобально уникальны, даже если часть id может быть дублирована в нескольких таблицах. –