Я работаю с Spring и Hibernate для разработки веб-приложений на Java. Предположим, что у меня есть таблица. Когда я удаляю некоторые записи из этой таблицы, иногда мне нужно сбросить значение поля первичного ключа.
Допустим, у меня есть 10 записей в таблице, и я удаляю последние 5 записей. Теперь, когда я вставляю новые записи, значение поля первичного ключа должно начинаться с 6
, но оно будет начинаться с 11
.
Если мне нужно начать значение первичного ключа с6
(maximum +1
)в MySql, мне просто нужно выполнить следующую инструкцию SQL.
alter table table_name auto_increment=1;
Это автоматически сбросит значение auto_increment
на значение maximum + 1
этого поля. (Может быть концептуально неверным, но это работает).
В Oracle (10g)я использую sequence
с первичным ключом. Есть ли в Oracle способ сбросить значение sequence
на maximum + 1
при удалении некоторых записей из базы данных?