Но иногда индексы могут создаваться без отношения к ключам. Это делается в системах управления базами данных для поддержки производительности операций сортировки и поиска.
Например, дихотомический поиск значения индекса в кортежах будет реализован в системах управления базами данных за двадцать итераций. Откуда получены эти сведения? Они были получены путем несложных вычислений, т. е. следующим образом:
10 6= (10 3) 2= 2 20;
Создаются индексы в системах управления базами данных при помощи уже известного нам оператора Create, но только с добавлением ключевого слова index. Выглядит такой оператор следующим образом:
Create index имя индекса
On имя базового отношения ( имя атрибута,.. );
Здесь мы видим знакомый нам металингвистический символ «,..», обозначающий возможность повтора аргумента через запятую, т. е. в этом операторе может быть создан индекс, соответствующий нескольким атрибутам.
Если требуется объявить уникальный индекс, перед словом index добавляют ключевое слово unique, и тогда весь оператор создания в базовом отношении индекса принимает следующий вид:
Create unique index имя индекса
On имя базового отношения ( имя атрибута );
Тогда в самом общем виде, если вспомнить правило обозначения необязательных элементов (металингвистический символ []), оператор создания индекса в базовом отношении будет выглядеть следующим образом:
Create [unique] index имя индекса
On имя базового отношения ( имя атрибута,.. );
Если требуется удалить из базового отношения уже имеющийся индекс, используют оператор Drop, также уже известный нам:
Drop index{ имя базового отношения. Имя индекса },.. ;
Почему здесь используется уточненное имя индекса « имя базового отношения. Имя индекса »? В операторе удаления индекса всегда используется его уточненное имя, потому что имя индекса должно быть уникальным в пределах одного отношения, но не больше.
6. Модификация базовых отношений
Для успешной и продуктивной работы с различными базовыми отношениями очень часто разработчикам необходимо каким-либо образом модифицировать это базовые отношения.
Какие основные необходимые варианты модификации встречаются чаще всего в практике проектирования баз данных? Перечислим их:
1) вставка кортежей.
Очень часто нужно в уже сформированное базовое отношение вставить новые кортежи;
2) обновление значений атрибутов.
А необходимость этой модификации в практике программирования встречается еще чаще, чем предыдущая, ведь при поступлении новой информации об аргументах вашей базы данных неминуемо придется какую-то старую информацию обновлять;
3) удаление кортежей.
И с примерно равной вероятностью возникает необходимость удалить из базового отношения те кортежи, присутствие которых в вашей базе данных более не требуется в силу новой поступившей информации.
Итак, мы обозначили основные моменты модификации базовых отношений. Как же можно достичь каждой из поставленных целей? В системах управления базами данных чаще всего существуют встроенные, базовые операторы модификации отношений. Дадим их описание в записи на псевдокоде:
1) оператор вставкив базовое отношение новых кортежей. Это оператор Insert. Выглядит он следующим образом:
Insert into имя базового отношения ( имя атрибута,.. )
Values( значение атрибута ,..);
Металингвистический символ «,..», поставленный после имени атрибута и значения атрибута, говорит нам, что этот оператор допускает одновременное добавление нескольких атрибутов в базовое отношение. В этом случае необходимо имена атрибутов и значения атрибутов перечислять через запятую в согласованном порядке.
Ключевое слово intoв сочетании с общим названием оператора Insertозначает «вставить в» и показывает, в какое отношение необходимо вставить указанные в скобках атрибуты.
Ключевое слово Valuesв этом операторе и означает «значения», «величины», которые и присваиваются этим вновь объявленным атрибутам;
2) теперь рассмотрим оператор обновлениязначений атрибутов в базовом отношении. Этот оператор называется Update, что в переводе с английского и означает буквально «обновить». Дадим полный общий вид этого оператора в записи на псевдокоде и расшифруем ее:
Читать дальше
Конец ознакомительного отрывка
Купить книгу