Тема 4 Индексы.
Цель: Изучить создание индексов и ключей в системе SQL Server.
Вопросы лекции:
1.
Создание индексов и ключей в
системе SQL-сервер
2.
Использование ограничений
3.
Использование диаграмм для
разработки структуры базы данных
4.
Создание представлений
1. Индексы
представляют собой наборы уникальных значений для некоторой таблицы с соответствующими ссылками на
данные, расположенные в самой таблице. Индексы являются удобным внутренним
механизмом системы SQL-сервера, с помощью которого осуществляется доступ к
данным наиболее оптимальным образом. Для создания индексов определенной таблицы базы
данных SQL-сервера можно воспользоваться одним из следующих способов:
создать индекс с помощью SQL-команды CREATE INDEX
воспользоваться возможностями
утилиты SQL Server Enterprise Manager
Начальным
этапом создания индекса является выбор необходимой базы данных и таблицы, для
которой он будет определяться. Выполнение команды АН Tasks / Manage Indexes меню Action отобразит на экране диалоговое
окно управления индексами базы данных. Выпадающие списки Databases и Table позволяют перемещаться между базами данных и их
таблицами. В списке Existing indexes отображаются имеющиеся индексы
для выбранной таблицы указанной базы данных. Здесь же имеются кнопки по управлению индексами. Кнопка New
позволяет открыть диалоговое окно для создания нового индекса. В этом окне следует указать имя
нового индекса, пометить те поля таблицы, которые войдут в индекс, а также установить некоторые опции
индекса:
Unique values - уникальность вводимых
значений
Ignore duplicate values - игнорирование ввода
повторяющихся значений в проиндексированных полях Clustered index - использование этой опции позволяет произвести
кластерное индексирование, в результате чего будут отсортированы данные в самой таблице согласно порядку этого индекса, и вся
добавляемая информация будет приводить к изменению физического порядка данных. При этом нужно
учитывать, что в таблице
может быть только один кластерный индекс.
Одним из основных понятий баз
данных, используемых при контроле целостности информации, является ключ.
Разделяют первичные и внешние ключи. Первичный ключ - это уникальное поле (или
несколько полей), однозначно определяющее записи таблицы базы данных. Внешние
ключи - это поля таблицы,
которые, как правило, соответствуют первичным* ключам из других таблиц. Задание
первичного ключа
таблицы осуществляется в дизайнере таблиц. Для этого следует выбрать подходящее
поле (опция Allow Nulls должна быть не помечена), и установить первичный ключ с помощью кнопки
Set primary key ("ключ").
2. С
помощью механизма ограничений осуществляется контроль целостности данных в
таблице. SQL-сервер позволяет определить ограничения, используемые для проверки
допустимости данных, указать набор определенных значений и т.д. В утилите SQL Server Enterprise Manager назначение ограничений осуществляется для
определенной таблицы в дизайнере таблиц выбором кнопки Table and Index Properties, с помощью которой отобразится
диалоговое окно свойств данной таблицы:
Нажатие кнопки
New приведет к созданию нового ограничения с задаваемым с поле (Constraint name именем.
После чего в поле Constraint expression необходимо будет ввести SQL-команду проверки вводимых
значений.
Например:
COURS BETWEEN I AND 5
или
STIP IN (0, 17,25,50,34,51)
3. В базах данных SQL-сервера существует объект Diagrams, позволяющий в графическом виде
разрабатывать структуру данных. Здесь имеется возможность создания таблиц,
определения ключей, осуществления связи между таблицами и т.д. Полученную
диаграмму можно распечатать. Здесь также можно добавлять различные текстовые комментарии и
заголовки. Однако отличительной чертой использования данного объекта является автоматическое
создание всего описанного в диаграмме.
Команда New Database Diagram меню Action приведет к запуску мастера
разработки диаграмм, который
запросит список таблиц, включаемых в диаграмму. С помощью кнопок панели
инструментов можно
как управлять внешним видом и размещением таблиц и надписей в окне, так и
добавлять или создавать новые таблицы.
В окне диаграммы возможно
установление реляционных связей между таблицами с помощью внешних ключей. Для
установления связи следует выбелить первичный ключ в родительской таблице и не отпуская кнопки мыши перетащить его к соответствующему
полю дочерней таблицы. После чего на экране появится диалоговое окно с запросом имени связи и
с возможностью установления характеристик этой связи, а именно:
Relationship name - имя
связи
Primary key table - первичный ключ родительской таблицы
Foreign key table - внешний ключ дочерней таблицы, по которому
произойдет связь Check existing data
on creation - выбор данной опции приведет к
проверке соответствия значений таблиц условиям данной связи по завершении
процесса создания Enable relationship for INSERT and UPDATE - создаваемая связь будет
использоваться при операциях добавления и изменения информации в таблицах
Enable relationship for replication - использование создаваемой
связи при процессах репликации данных При сохранении созданной диаграммы структуры данных
система запросит имя диаграммы и разрешение на внесение изменений в реальные объекты базы
данных.
4. Представления
- это сохраненные результаты SQL-запроса, с помощью которых
можно осуществлять доступ
к данным таблиц, для которых был создан этот запрос. Представления являются удобным
инструментом для
работы с таблицами базы данных.
Для создания представления в
первую очередь необходимо выбрать группу Views в списке объектов базы данных, после
чего, воспользовавшись командой New View меню Action, загрузить дизайнер представлений.
Диалоговое окно дизайнера состоит
из следующих основных частей:
Diagram Pane (панель диаграмм) -
обычно используется для добавления новых таблиц в представление, описания связей
между ними, а также определения полей, которые будут участвовать в представлении.
Grid Pane (панель-список) - на этой
панели отображается перечень полей, выбранных в Diagram Pane.
Здесь также можно добавлять новые
поля, определять наличие различных критериев и т.д.
SQL
Pane (SQL-панель) -
на этой панели представляется SQL-команда, формируемая с помощью вышеописанных панелей.
Result Pane
(панель результатов) - работу произведенных настроек удобно проверить,
используя данную панель, в которой по
нажатию кнопки Rim, отображаются результаты настроенного представления.
Для просмотра информации из
сохраненного ранее представления необходимо выполнить команду Open
View / Return all rows меню Action, предварительно выбрав его в
списке объектов Views. Редактирование содержимого представления аналогично
процессу редактирования таблиц.
Литература:
1 Е. Мамаев
«Microsoft SQL Server 2000», БХВ-Петербург,
2004г.
Контрольные вопросы:
1 Что собой представляет индекс?
2 Как
создается диаграмма в SQL Server?