Галерея
7757 8119 8300 8698 8817 9504 9722 9937
Интересные записи
Топовые новости
Новое

Последовательности в Oracle 11g

Последовательности в Oracle 11gВ Oracle синтаксис создания последовательности следующий. Как вы заметили, большинство предложений в инструкции CREATE SEQUENCE необязательны. Если нужно создать последовательность, начинающуюся с единицы и генерирующую последовательные значения (2, 3, 4 и т. д.), пока не будет достигнуто максимально допустимое в Oracle целое число (1027), достаточно следующей инструкции. Если же нужно нечто более сложное, в следующих подразделах будет показано, как это сделать. Создаваемая последовательность начинается с заданного в предложении START WITH значения, после чего это число изменяется при каждом следующем обращении к генератору на величину, указанную в предложении INCREMENT BY. Так, для создания убывающей последовательности следует использовать отрицательный шаг приращения. Также можно указать минимальное и максимальное значения последовательности В предыдущем примере последовательность my_serquence2 будет генерировать значения 500, 490, 480, 470… 0. После достижения последовательностью минимального значения (MIN — VALUE) будет сгенерирована ошибка, далее последовательность не сможет использоваться. Если создается циклическая последовательность, после достижения ею максимального (минимального) значения она возвращается к минимальному (максимальному) и перезапускается. Следующая последовательность вернется к значению 1000 после достижения ею минимального значения. Часто бывает трудно понять различие между предложениями START WITH и MINVALUE (или MAXVALUE в убывающей последовательности). На самом деле в циклических последовательностях отличие очень существенно. К примеру, может возникнуть необходимость начать последовательность со 100, постепенно увеличивать значения до 1000, затем вернуться к 10 и повторить прогон до максимального значения 1000. В данном случае число 100 нужно указать в качестве начального значения, а 10 — в качестве минимального.