Как организовать генерацию уникальных кодов?
==============================================

 Проблема не только в том, что не получается сгенерить уникальные коды, проблема в догенерации. К примеру, необходимо сгенерить 500к кодов, скажем в базе уже находится 400к, вопрос как догенерить необходимое кол-во кодов, за меньшее время. Чтобы не делать 400к проверок, чтобы добавить 400 001 код.  

  

Я извиняюсь, за не полноту. Коды могут быть разной длины. В сервисе для кодов также задаются некоторые правила, например, длина кода и алфавит. 

 Использовать формулу: CODE=N.  

Где code - это код, а N - порядковый номер.  

Или более сложную формулу зависимости кода от N без коллизий.  

  

Ещё вариант: составить у уже всех имеющихся кодов единую 3-х мерную матрицу по каждому символу: символ, позиция, id кода.  

Там, где останутся пустые ячейки - это свободные комбинации (знакоместА) для новых кодов. 

 Можно попробовать использовать GUID. Утверждается что они уникальны. Т.е. можно не проверять наличие такого же в базе при вставке нового.  

Ну или уникальным кодом может быть целое число. Находим максимальное которое уже сохранено в базе и начинаем от него генерировать вверх.