Помогите придумать алгоритм
Добавлено: 10 фев 2008, 17:25
Форумчанам привет.
Подскажите дитю неразумному...
Задача такова:
Необходимо организовать автоматическую нумерацию записей в таблице(табл1) .Количество записей конечно, т.е. никогда не будет больше 100.000. Почти обязательно, чтобы числа шли без пропусков. Т.е. в общем случае генератор использовать не получиться. Единственное, что приходит в голову, это взять и создать отдельную таблицу(табл2) с одним полем где значения будут от 1 до 100000. Соответственно по старту транзакции выбирается минимальное значение из табл2, запись с минимальным число удаляется до завершения трансзакции. Если commit, то запись не восстанавливается, если rollback - восстанавливается. Но алгоритм не нравится. Чувствую, что грабли, но не могу понять где. Подскажите.
Подскажите дитю неразумному...
Задача такова:
Необходимо организовать автоматическую нумерацию записей в таблице(табл1) .Количество записей конечно, т.е. никогда не будет больше 100.000. Почти обязательно, чтобы числа шли без пропусков. Т.е. в общем случае генератор использовать не получиться. Единственное, что приходит в голову, это взять и создать отдельную таблицу(табл2) с одним полем где значения будут от 1 до 100000. Соответственно по старту транзакции выбирается минимальное значение из табл2, запись с минимальным число удаляется до завершения трансзакции. Если commit, то запись не восстанавливается, если rollback - восстанавливается. Но алгоритм не нравится. Чувствую, что грабли, но не могу понять где. Подскажите.