Студопедия — КРАТКАЯ ТЕОРИЯ. Последовательность – объект базы данных, посредством которого пользователи могут генерировать уникальные целые значения
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

КРАТКАЯ ТЕОРИЯ. Последовательность – объект базы данных, посредством которого пользователи могут генерировать уникальные целые значения






Последовательность – объект базы данных, посредством которого пользователи могут генерировать уникальные целые значения. Как правило, последовательности используют для автоматической генерации уникальных ключей.

Значения для каждой последовательности автоматически генерируются специальными подпрограммами ORACLE и, следовательно, позволяют избежать неизбежных потерь в производительности в результате реализации последовательностей на уровне приложений. Например, обычным способом такой реализации является блокирование таблицы, хранящей номер, в каждой транзакции в момент приращения последовательности. В результате только один номер последовательности может быть сгенерирован в каждый момент времени. Последовательности же ORACLE позволяют одновременное генерирование нескольких номеров последовательности, гарантируя при этом, что каждый номер последовательности будет уникальным.

Когда генерируются номера последовательности, осуществляется приращение этой последовательности независимо от того, завершается эта транзакция или отменяется. Если два пользователя параллельно осуществляют приращение одной и той же последовательности, номера последовательности, видимые каждым из этих пользователей, могут иметь пропуски значений, поскольку эти значения были сгенерированы другим пользователем. Одному пользователю никогда не может встретиться номер последовательности, сгенерированный другим пользователем. Если значение последовательности сгенерировано каким-либо пользователем, этот пользователь может использовать это значение независимо от того, осуществляется ли приращение последовательности другими пользователями.

Так как номера последовательности генерируются независимо от таблиц, одна и та же последовательность может использоваться для одной или более таблиц. Возможно, что отдельные номера последовательности будут вообще пропущены из-за того, что они могли быть сгенерированы и использованы в транзакции, которая, в конечном счете, была отменена.

Если в операторе CREATE SEQUENCE кроме имени не указать ни одного предложения, то по умолчанию создается возрастающая последовательность, которая начинается с 1, имеет шаг 1 и не имеет верхнего предела. Если указать только предложение INCREMENT BY -1, то создается убывающая последовательность, которая начинается с -1 и не имеет нижнего предела.

Можно создать последовательность так, чтобы приращение ее значений происходило одним из следующих способов:

- приращение значений последовательности продолжается неограниченно;

- приращение значений последовательности происходит до
определенного предела и затем прекращается;

- приращение значений последовательности происходит до
определенного предела и затем начинается заново.

Чтобы создать последовательность, приращение значений которой продолжается неограниченно, необходимо опустить параметр MAXVALUE или указать параметр NOMAXVALUE для возрастающей последовательности. Для убывающей последовательности опустить параметр MINVALUE или указать параметр NOMINVALUE.

Чтобы создать последовательность, приращение значений которой прекращается на определенном значении, необходимо указать значение для параметра MAXVALUE (если последовательность возрастающая) или значение для параметра MINVALUE (если последовательность убывающая). При этом необходимо указать также параметр NOCYCLE. Любая попытка сгенерировать номер последовательности, если последовательность уже достигла своего предела, приведет к ошибке.

Чтобы создать последовательность, приращение значений которой начинается заново после достижения определенного значения, необходимо указать значения для обоих параметров, MAXVALUE и MINVALUE, а также параметр CYCLE.

Значение параметра START WITH устанавливает начальное значение, генерируемое последовательностью, после того как ее создали. Следует обратить внимание, что это не обязательно именно то значение, с которого циклическая последовательность начинается заново после достижения своего максимального или минимального значения.

Количество кэшируемых значений для последовательности определяется значением параметра CACHE. Кэшированные последовательности обеспечивают быструю генерацию номеров последовательности. Кеш для данной последовательности заполняется при первом запросе номера этой последовательности. Кеш регенерируется после количества запросов, указанного в параметре CACHE. В случае сбоя системы все копированные номера последовательности, которые не были использованы в завершенных операторах языка манипулирования данными, теряются. Возможное количество потерянных значений равно величине параметра CACHE. По умолчанию ORACLE кэширует 20 номеров последовательности.

Триггер базы данных (database trigger) – это хранимый блок PL/SQL, который ассоциирован с таблицей. В триггере посредством PL/SQL описаны действия, которые необходимо выполнить при обработке операторов SQL (таких как Insert, Update, Delete и т.д.) для данной таблицы. Oracle автоматически выполняет триггер, во время обработки оператора SQL.







Дата добавления: 2014-11-10; просмотров: 516. Нарушение авторских прав; Мы поможем в написании вашей работы!



Шрифт зодчего Шрифт зодчего состоит из прописных (заглавных), строчных букв и цифр...

Картограммы и картодиаграммы Картограммы и картодиаграммы применяются для изображения географической характеристики изучаемых явлений...

Практические расчеты на срез и смятие При изучении темы обратите внимание на основные расчетные предпосылки и условности расчета...

Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Психолого-педагогическая характеристика студенческой группы   Характеристика группы составляется по 407 группе очного отделения зооинженерного факультета, бакалавриата по направлению «Биология» РГАУ-МСХА имени К...

Общая и профессиональная культура педагога: сущность, специфика, взаимосвязь Педагогическая культура- часть общечеловеческих культуры, в которой запечатлил духовные и материальные ценности образования и воспитания, осуществляя образовательно-воспитательный процесс...

Устройство рабочих органов мясорубки Независимо от марки мясорубки и её технических характеристик, все они имеют принципиально одинаковые устройства...

КОНСТРУКЦИЯ КОЛЕСНОЙ ПАРЫ ВАГОНА Тип колёсной пары определяется типом оси и диаметром колес. Согласно ГОСТ 4835-2006* устанавливаются типы колесных пар для грузовых вагонов с осями РУ1Ш и РВ2Ш и колесами диаметром по кругу катания 957 мм. Номинальный диаметр колеса – 950 мм...

Философские школы эпохи эллинизма (неоплатонизм, эпикуреизм, стоицизм, скептицизм). Эпоха эллинизма со времени походов Александра Македонского, в результате которых была образована гигантская империя от Индии на востоке до Греции и Македонии на западе...

Демографияда "Демографиялық жарылыс" дегеніміз не? Демография (грекше демос — халық) — халықтың құрылымын...

Studopedia.info - Студопедия - 2014-2024 год . (0.01 сек.) русская версия | украинская версия