Що таке послідовність?
Послідовність - це об’єкт бази даних, який автоматично генерує збільшений список числових значень відповідно до правила, як зазначено в специфікації послідовності.
Наприклад, щоб автоматично вставити номер працівника у стовпець (EMPLOYEE_NO) Таблиці, коли новий запис вставляється в таблицю, тоді ми використовуємо послідовність.
Значення послідовності генеруються у порядку зростання або зменшення.
Послідовності не пов'язані з таблицями; вони використовуються додатком. Є два значення послідовно -
- КРИВЛ - надайте поточне значення послідовності.
- NEXTVAL - Вкажіть наступне значення послідовності.
СИНТАКС
CREATE SEQUENCE[ ] [RESET BY ]
ЕЛЕМЕНТИ СИНТАКСИСУ
ЕЛЕМЕНТИ | ОПИС |
---|---|
<ім'я_послідовності> | Це назва послідовності. |
[<список_параметрів_послідовності>] | Він визначає один або кілька параметрів послідовності. |
ПОЧАТИ З | Він описує значення початкової послідовності. |
ЗБІЛЬШЕННЯ | Це визначає значення, яке буде збільшено до останнього значення, призначеного для кожного разу, коли генерується нове значення послідовності. За замовчуванням 1. |
MAXVALUE | Це визначає максимальне значення, яке може генеруватися послідовністю. |
БЕЗ МАКСИМА | Коли вказано NO MAXVALUE, для зростаючої послідовності максимальним значенням буде 4611686018427387903, а мінімальним значенням для спадної послідовності буде -1. |
MINVALUE | Він визначає мінімальне значення, яке може генерувати послідовність. |
ЦИКЛ | Директива CYCLE визначає, що порядковий номер буде перезапущений після досягнення максимального чи мінімального значення. |
БЕЗ ЦИКЛУ | Параметр за замовчуванням. Директива NO CYCLE визначає, що порядковий номер не буде перезапущений після досягнення максимального чи мінімального значення. |
КЕШ <розмір кешу> / | Розмір кешу визначає, який діапазон порядкових номерів буде кешований у вузлі. |
БЕЗ КЕШУ | Параметр за замовчуванням. Директива NO CACHE визначає, що порядковий номер не буде кешований у вузлі. |
СКИНУТИ ЗА <підзапитом> | Він вказує, що під час перезапуску бази даних база даних автоматично виконує <підзапит> і значення послідовності перезапускається із повернутим значенням. |
Приклад -
Ми створимо послідовність з іменем DHK_SCHEMA.EMP_NO, яка створить збільшене значення послідовності на +1 кожного разу, коли використовується послідовність.
Сценарій послідовності -
CREATE SEQUENCE DHK_SCHEMA.EMP_NO START WITH 100 INCREMENT BY 1.
Тут ми будемо використовувати об'єкт "послідовність" у наведеному нижче прикладі, щоб збільшити значення співробітника no на +1 кожного разу, коли виконується запит вибору. У запиті "nextval" може бути використаний для генерації серійного номера або однотипних вимог.
Використання послідовності -
SELECT DHK_SCHEMA.EMP_NO.nextval FROM DUMMY;
ВИХІД - 100,101,102
... Отже, при кожному виконанні вищезазначеного запиту виберіть.