Методические рекомендации по выполнению работы

Лабораторная работа № 1.

Тема:Организация баз данных. Основы построения представлений и триггеров в СУБД SQL Server.

 

Цель работы:Изучение логической архитектуры сервера и клиента СУБД SQL Server, возможностей создания, модификация и выполнение запросов, построение и использование представлений и триггеров.

 

Структура лабораторной работы

1. Рекомендации по выполнению работы

1.1. Работа с клиентом СУБД SQL Server

1.2. Создание БД

1.3. Создание и выполнение запросов

1.4. Создание и модификация представлений.

1.5. Создание и модификация триггеров.

2. Задание для самостоятельной работы.

1.1. Создание таблиц БД.

1.2. Создание и реализация запросов.

1.3. Создание и реализация представления.

1.4. Создание и реализация триггеров.

3. Оформление отчета.

4. Контрольные вопросы

5. Список рекомендуемой литературы.

 

Методические рекомендации по выполнению работы

(1)

Запуск клиентской части

В списке программ выберите Microsoft SQL Server 2005 и далее утилиту SQL Server Management Studio. В открывшемся основном окне утилиты имеются две рабочие панели. В левой панели находится дерево Проводника сервера (Object Explorer). Для подключения к серверу баз данных в Object Explorer необходимо выбрать Connect→Database Engine… Далее необходимо выбрать название сервера (в лаборатории 229 – “ALLA”). Для продолжения – выбрать тип соединения Windows Authentication (ввод учетных данных не требуется).

 

Соединение клиентской части с сервером

Щелкните по символу “+” возле пиктограммы сервера в дереве Проводника. При успешном соединении раскроется следующий уровень дерева, в котором видны доступные папки (в том числе Databases). Откройте папку Databases, в дереве появятся доступные системные базы данных (master, model, msdb, tempdb), а также, возможно, базы данных, ранее созданные под управлением данного сервера.

(2)

Создание БД

Щелкнув п/к по пункту Databases в дереве Проводника, выберите в появившемся меню пункт New Database. В появившемся окне Database Properties задайте имя БД. Обратите внимание на параметры файла (оставить предлагаемые установки). Закройте окно, подтвердив введенные параметры.

В списке баз данных дерева Проводника появится созданная БД.

 

Открытие БД

В дереве Проводника раскройте пункт, соответствующий вашей БД: появится список основных типов объектов БД и их пиктограмм. Выберите тип Tables (Таблицы) и щелкните по пиктограмме. В правой рабочей панели появится список таблиц БД. Первоначально в списке находятся только системные таблицы (Type - System).

 

Открытие таблицы

Щелкнув п/к в списке таблиц по нужной таблице, выберите во всплывающем меню команду Open Table (Открыть таблицу). Появится окно с данными таблицы, в котором можно производить изменение данных.

(Системные таблицы не корректировать!)

 

(3)

Создание таблицы (описание полей таблицы)

Щелкнув п/к по пункту Tables в дереве Проводника или в списке таблиц по любой таблице, выберите во всплывающем меню команду New Table (Новая таблица).В появившемся всплывающем окне задайте имя таблицы и, далее, в окне New Table осуществите описание ее полей в соответствии с предлагаемым шаблоном. При необходимости снимите флажок разрешения неопределенных значений (колонка Allow Nulls шаблона).

По окончании описания полей таблицы задайте ограничения целостности (см. ниже) и сохраните результат (имя таблицы будет помещено в список таблиц БД).

 

Установка первичного ключа

Нажатием на крайнюю левую ячейку шаблона описания полей таблицы в окне New Table(поле серого цвета)выделитенужное поле (при необходимости выделения нескольких полей одновременно удерживайте нажатой клавишу Ctrl). Далее снимите флажок разрешающий пустое значение в поле (Allow Nulls) и нажмите на пиктограмму Set Primary Key (Установить первичный ключ) : в соответствующих строках шаблона (в ячейках выделения строк) появится изображение ключа.

 

 

Установка индексов и ключей

В окне New Tableнажмите пиктограмму Manage Indexes and Keys (Управление индексами и ключами ). Для создания нового ключа (индекса) нажмите кнопку Add, выберите необходимые поля из раскрывающегося списка полей, задайте свойства создаваемого объекта, установив флажки в нужное положение. Для модификации существующего ключа (индекса) вначале выберите его по имени из раскрывающегося списка.

 

Установка внешнего ключа

Там же нажмите пиктограммуRelationships (Связи ). Для создания новой связи нажмите кнопку Add; справа от параметра Tables and Columns Specification нажмите “…” для перехода к шаблону описания связи (он вначале пуст); задайте имя ссылочной таблицы и поля ее первичного ключа (колонка Primary key table шаблона) и соответствующие имена полей внешний ключа (колонка Foreign Key Table). (Каждая строка шаблона содержит пару соответственных полей таблиц. Выбор имени поля можно осуществить из списка, выпадающего при нажатии на указатель в ячейке заполняемой строки). Для определения свойств связи установите флажки, имеющиеся в окне, в нужное состояние.

Для модификации существующей связи вначале выберите ее по имени внешнего ключа из раскрывающегося списка.

 

Примечание. Установку внешнего ключа можно осуществить, построив соответствующую диаграмму (схему) данных (см. ниже).

 

Установка проверочных ограничений

Там же нажмите пиктограмму Check Constraints(контроль ограничений ). Для создания нового условия нажмите кнопку Add, в рабочем поле Expression наберите проверочное условие (логическое выражение над полями таблицы, условия, определяемые для нескольких полей объединяются логической связкой AND). Для модификации существующего ограничения вначале выберите его по имени из раскрывающегося списка.

 

Модификация структуры таблицы

Модификация созданной таблицы осуществляется из окна Design, аналогичного по своему виду окну New Table. Окно вызывается одноименной командой всплывающего меню, активизированного для соответствующей таблицы в списке таблиц.

 

(4)

Создание диаграмм

В дереве Проводника в списке типов объектов нужной БД щелкните п/к по пункту Database Diagrams, активизируйте команду New Database Diagram из всплывающего меню. Появится окно New Diagram и окно мастера создания диаграмм. Работая в окне мастера, выберите нужные таблицы (кнопка Add), подтвердите свой выбор. В окне New Diagram мастер создаст схематическое изображение таблиц (имя таблицы и поля). Для создания связи между таблицами воспользуйтесь возникшим изображением: наведите курсор мыши на ячейку выделения нужного поля одной из связываемых таблиц (ячейка находится в крайней левой позиции строки, серого цвета) и перетащите его на соответствующее поле другой таблицы.

 

Примечание. Перетаскивание производится в направлении от базовой таблицы к зависимой таблице. Выбранное поле базовой таблицы должно входить в ее первичный ключ. Типы и размеры соответственных полей базовой и зависимой таблиц должны быть совместимыми.

 

В появившемся окне Foreign Key Relationship,отображающем создаваемую связь, укажите все соответственные поля ссылочной и зависимой таблиц; задайте характеристики связи, установив флажки в нужное состояние (см. выше пункт «Установка внешнего ключа»). После закрытия окна на диаграмме появится изображение связи.

После определения всех нужных связей сохраните созданную диаграмму, присвоив ей имя во всплывающем окне, появляющемся при выполнении команды сохранения.

 

Модификация диаграмм и связей

Для модификации имеющейся диаграммы выберите ее пиктограмму, появляющуюся в панели Object Explorerпосле щелчка по пункту Diagrams в дереве Проводника, после п/к выберите Modify. Появится окно Edit Diagram, аналогичное по своему виду окну New Diagram.

Для добавления таблицы в диаграмму воспользуйтесь кнопкой Add table контекстного меню поля диаграммы (щелчок п/к).

Для удаления таблицы из диаграммы выделите курсором мыши эту таблицу, активизируйте всплывающее меню (щелчок п/к), и используйте команду Remove from Diagram.

Для изменения существующей связи наведите курсор мыши на нее и активизируйте щелчком л/к, далее используйте правую боковую панель Properties.

Для удаления связи из БД активизируйте всплывающее меню щелчком п/к на ней и используйте команду Delete Relationships from Database.

 

(5)

Создание и выполнение запроса

Нажмите кнопку New Queryна панели инструментов. Наберите текст запроса. Откомпилируйте запрос (Ctrl+F5 или пункт Parse на панели инструментов). Рабочая область окна будет разделена на две горизонтальные панели и в нижней панели появится сообщение о результатах компиляции. Если компиляция прошла неудачно, устраните в тексте запроса указанные в сообщении ошибки и повторно проведите компиляцию. При успешном завершении компиляции дайте команду на выполнение запроса (F5 или пункт Execute в меню Query). В нижней панели появится результат выполнения запроса. При необходимости выполните настройку панели на вывод результата в виде таблицы (Ctrl+D или пункт Results in Grid нижней панели инструментов ).

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

 

(6)

Создание и модификация представлений

В дереве Проводника для своей БД щелкнув п/к по пункту Views, активизируйте всплывающее меню, в котором дайте команду New View… В появившейся вкладке имеются 4 горизонтальные рабочие панели: панель диаграммы (Diagram Pane), панель шаблона (Grid Pane), панель запроса (SQL Pane) и панель результатов (Results Pane). Составом отображаемых в окне рабочих панелей можно управлять, используя соответствующие кнопки-пиктограммы на панели инструментов.

Создание представления удобнее всего начинать с заполнения панели диаграммы, для чего следует воспользоваться кнопкой-пиктограммой Add Table (Добавить таблицу). Нажатие на кнопку активизирует одноименное окно, в котором имеются две закладки – Tables (Таблицы) и Views (Представления). Выберите необходимые объекты из списка в рабочей области окна и с помощью кнопки Add добавьте их в диаграмму. Закройте окно Add Table; в панели диаграммы появится схематическое изображение выбранных таблиц и связей, установленных при создании таблиц. В диаграмме отметьте флажками нужные поля таблиц.

Дальнейшую работу проводите в панели шаблона. При необходимости для каждого поля можно задайте альтернативное имя (колонка Alias шаблона), снять флажок вывода в представление (колонка Output), задать условие выборки (колонки Criteria и Or…).

Для представлений, содержащих итоговые значения, нажатием кнопки-пиктограммы Add Group by добавьте в шаблон одноименную колонку. Для каждого поля представления задайте в колонке необходимую агрегатную функцию. (Выбор функции осуществляется из списка, раскрывающегося при нажатии указателя в соответствующей ячейке шаблона).

Все действия по заполнению шаблона сопровождаются синхронными изменениями текста SQL в панели запроса. Вы можете работать непосредственно с текстом запроса (при этом соответствующие изменения автоматически будут происходить в панели диаграммы и панели шаблона).

Для отладки запроса воспользуйтесь пиктограммой Execute SQL панели инструментов. Результаты обработки представления выводятся в рабочую панель результатов.

По завершении создания представления сохраните его, задав имя в окне, всплывающем по команде сохранения. В списке представлений (правая рабочая панель основного окна Object Explorer) появится созданное представление.

Для модификации представления выберите его в списке, активизируйте всплывающее меню (нажатие п/к), дайте команду Design. Появится вкладка, аналогичная по своему виду вкладке при выборе пункта New View.

Полный текст созданного Представления на SQL можно просмотреть и отредактировать, выбрав во всплывающим меню (нажатие п/к) пункт Edit.

 

Работа с данными представления

Чтобы открыть представление, выберите его в списке и выполните команду Open View всплывающего меню. Появится таблица с данными, соответствующими запросу. Работа с данными представления аналогична работе с данными базовой таблицы.

 

Примечание. Изменение данных в представлении приводит к соответствующим изменениям в исходных таблицах (при условии, что представление является модифицируемым).

 

(7)

Создание и модификация триггера

В раскрывающемся списке существующей таблицы щелкните п/к на папке Triggers и выберите New Trigger… В рабочем поле новой вкладки наберите текст триггера. Упрощенно, синтаксис триггера имеет вид: