Използвайте конкатенация на уникално увеличено число и произволно генерирано число.
Уникалното увеличено число гарантира, че резултатът е уникален, а произволно генерираното число го прави трудно предполагаем.
Това епросто и гарантирано, че няма сблъсъки (1). Резултатът енарастващ , отчасти случайни инепредвидими (при условие, че частта с произволно число е генерирана с добър PRNG).
(1):Трябва или да въведете id
и random
с нули или да ги разделите с някакъв нецифрен знак.
С MySQL db това се превежда като:
CREATE TABLE foo (
id int not null auto_increment,
random int not null,
...
primary key (id)
);