Изменение столбцов идентификации
Для столбцов идентификации позволено изменять способ генерации, начальное значение и значение приращения.
Предложение SET GENERATED позволяет изменить способ генерации столбца идентификации.Существует два способа генерации столбца идентификации:
-
BY DEFAULTстолбцы позволяют переписать сгенерированное системой значение в операторахINSERT,UPDATE OR INSERT,MERGEпросто указав значение этого столбца в списке значений. -
ALWAYSстолбцы не позволяют переписать сгенерированное системой значение, при попытке переписать значение такого столбца идентификации будет выдана ошибка. Переписать значение этого столбца в операторе INSERT можно только при указании директивы OVERRIDING SYSTEM VALUE.
ALTER TABLE objects
ALTER ID SET GENERATED ALWAYS;
Если указано только предложение RESTART, то происходит сброс значения генератора в ноль.Необязательное предложение WITH позволяет указать для нового значения внутреннего генератора отличное от нуля значение.
ALTER TABLE objects
ALTER ID RESTART WITH 100;
Предложение SET INCREMENT [BY] позволяет изменить значение приращения столбца идентификации.Значение приращения должно быть отлично от 0.
ALTER TABLE objects
ALTER ID SET INCREMENT BY 2;
В одном операторе можно изменить сразу несколько свойств столбца идентификации, например:
ALTER TABLE objects
ALTER ID SET GENERATED ALWAYS RESTART SET INCREMENT BY 2;
Предложение DROP IDENTITY удаляет связанный со столбцом идентификации системную последовательность и преобразует его в обычный столбец.
ALTER TABLE objects
ALTER ID DROP INDENTITY;