Учебники

DB2 — последовательности

Эта глава знакомит вас с концепцией последовательности, созданием последовательности, просмотром последовательности и удалением их.

Вступление

Последовательность — это программная функция, которая генерирует целые числа в возрастающем или убывающем порядке в пределах определенного диапазона для генерации первичного ключа и координации других ключей в таблице. Вы используете последовательность для использования целых чисел, скажем, для employee_id илиaction_id. Последовательность может поддерживать типы данных SMALLINT, BIGINT, INTEGER и DECIMAL. Последовательность может быть разделена между несколькими приложениями. Последовательность увеличивается или уменьшается независимо от транзакций.

Последовательность создается оператором CREATE SEQUENCE.

Типы последовательностей

Доступны два типа последовательностей:

  • NEXTVAL : возвращает увеличенное значение для порядкового номера.

  • ПРЕДЫДУЩЕЕ ЗНАЧЕНИЕ : Возвращает недавно сгенерированное значение.

NEXTVAL : возвращает увеличенное значение для порядкового номера.

ПРЕДЫДУЩЕЕ ЗНАЧЕНИЕ : Возвращает недавно сгенерированное значение.

Параметры последовательностей

Следующие параметры используются для последовательностей:

Тип данных : это тип данных возвращенного увеличенного значения. (МАЛЕНЬКИЙ, БОЛЬШОЙ, ЦЕЛЫЙ, НОМЕР, ДВОЙНОЙ)

НАЧАТЬ С : ссылочное значение, с которого начинается последовательность.

MINVALUE : минимальное значение для начала последовательности.

MAXVALUE : максимальное значение для последовательности.

INCREMENT BY : значение шага, на которое увеличивается последовательность.

Цикл последовательности : предложение CYCLE вызывает генерацию последовательности несколько раз. Генерация последовательности осуществляется путем обращения к возвращенному значению, которое сохраняется в базе данных предыдущей генерацией последовательности.

Создание последовательности

Вы можете создать последовательность, используя следующий синтаксис:

Синтаксис:

db2 create sequence <seq_name> 

Пример : [Создать новую последовательность с именем ‘sales1_seq’ и увеличением значений от 1]

db2 create sequence sales1_seq as int start 
with 1 increment by 1  

Просмотр последовательностей

Вы можете просмотреть последовательность, используя синтаксис, приведенный ниже:

Синтаксис:

db2 value <previous/next> value for <seq_name>

Пример : [Чтобы увидеть список предыдущих обновленных значений в последовательности ‘sales1_seq’]

db2 values previous value for sales1_seq  

Выход:

 1 
----------- 
  4 
  1 record(s) selected. 

Отбрасывание последовательности

Чтобы удалить последовательность, вам нужно использовать «DROP SEQUENCE» Команда. Вот как вы это делаете:

Синтаксис:

db2 drop sequence <seq_name>>

Пример : [Удалить последовательность ‘sales1_seq’ из базы данных]

db2 drop sequence sales1_seq  

Выход: