2014-01-13 5 views
-1

Что является альтернативой последовательности в Oracle, необходимо сгенерировать идентификатор для столбца первичного ключа.Альтернатива последовательности Oracle

Я попытался это:

CREATE SEQUENCE game_id_seq START WITH 1000 INCREMENT BY 1; 
game_id_seq.nextval 

, но он говорит мне:

обновление или INSERT заявление попытались вставить дубликат ключа. Для надежного Oracle, настроенного в режиме СУБД MAC, вы можете видеть это сообщение, если дублирующаяся запись существует на другом уровне.

благодарит

+0

Если это первичный ключ, тогда нет возможности вставить дубликат или принудительное дублирование обновления до тех пор, пока ключ не будет действителен. Таким образом, вы можете продолжить работу с SEQUENCE. – SriniV

+0

Последовательность не работает, если вы используете ее в загрузчике SQL Loader, DIRECT. Но для этого, Sequence - лучший вариант. –

+0

Показать оператор обновления или вставки, который использует последовательность. – GriffeyDog

ответ

1

Вы создали последовательность, которая начинается с номером 1000. Если таблица уже содержит данные, то убедитесь, что последовательность начинается с числа больше, чем уже в таблице с наибольшим числом.

+0

Максимальное число - 250 – Mark2

Смежные вопросы