Автозначение primary key (again)

Игорь Коротков
Дата: 10.03.2011 04:53:53
Импортируется в 10g крупная база Access.
Во многих таблицах используется такой тип первичного ключа как "Счетчик" на типе длинное целое со _случайными_ новыми значениями.
Т.е. у меня сейчас на руках таблички с кучей записей у которых в праймари ки рандомные числа от -2 147 483 648 до 2 147 483 647.

Базой естественно намереваются пользоваться и далее, так что в неё придется добавлять новые значения.
Есть ли для Oracle какая-нибудь best practice для реализации такой штуки?
wurdu
Дата: 10.03.2011 05:01:10
sequence
Игорь Коротков
Дата: 10.03.2011 05:16:11
У меня в мыслях лишь одно её применение в данной ситуации:
В импортируемых таблицах primary key брать заведомо шире long int в access (а там это всего 4 байта)
И в новой БД создать sequence с min value = 2^31.
Тогда мы не пересечемся с уже существующими записями и инкрементироваться будем автоматически.

Вы это и имели в виду?
wurdu
Дата: 10.03.2011 06:29:24
Игорь Коротков
У меня в мыслях лишь одно её применение в данной ситуации:
В импортируемых таблицах primary key брать заведомо шире long int в access (а там это всего 4 байта)
И в новой БД создать sequence с min value = 2^31.
Тогда мы не пересечемся с уже существующими записями и инкрементироваться будем автоматически.

Вы это и имели в виду?
Ну да. Первичный ключ - number, сдвигаем сиквенс либо до max, либо до какого-то одинакового значения, в этом случае будет видно какие значения появились уже в Оракле.