- •Московский Авиационный Институт
- •Оглавление
- •Теоритическая часть Основные термины, используемые в пособии
- •Многопользовательские базы данных
- •Модель данных
- •Избыточность в таблицах базах данных
- •Нормализация
- •Ограничения целостности
- •Индексы
- •История выпусков sql Server
- •Редакции sql Server 2008
- •Системные требования sql server 2008
- •Установка ms sql Server 2008
- •Программное обеспечение sql Server 2008
- •Базы данных
- •Создание новой бд
- •Удаление бд
- •Создание таблиц
- •Удаление таблиц
- •Работа с таблицами
- •Типы данных
- •Создание пользовательских типов данных
- •Создание ограничений
- •Создание диаграммы бд
- •Создание представлений
- •Создание триггеров
- •Индексы
- •Безопасность sql Server
- •Создание имя входа
- •Создание пользователя базы данных
- •Настройка удаленного доступа к бд в 326 аудитории
Создание представлений
Представление – это виртуальная таблица, определяемая запросом, содержащим выборку данных. Эта виртуальная таблица состоит из данных одной или нескольких реальных таблиц, а для пользователей представление выглядит, как реальная таблица. В отличие от обычных таблиц реляционной БД, представление не является самостоятельным набором данных, хранящимся в базе. Содержимое представления динамически вычисляется на основании данных, находящихся в реальных таблицах. Изменение данных в реальной таблице БД немедленно отражается в содержимом всех представлений, построенных на основании этой таблицы. Представление хранится просто как заранее определенный код T-SQL. Так как представление представляет собой выборку, то при помощи него нельзя изменять\добавлять\удалять данные
Преимущество использования представлений заключается в том, что можно создавать представления с различными атрибутами без необходимости дублирования данных. Представления полезны в целом ряде ситуаций, их полезно использовать для обеспечения безопасности данных, для упрощения презентации данных. Для создания представления нужно в Обозревателе Объектов в контейнере базы данных, нажать правой кнопкой мыши по «представления» и выбрать «Создать представление». Появится окно выбора таблиц, из которых будут выбираться данные:
Чтобы добавить нужные таблицы, нужно поочередно выбирать их и нажимать «Добавить». По завершению отобразится окно структуры представления:
На схеме автоматически отображены связи. Для добавления столбцов в представление нужно галочками выбрать необходимые из таблиц столбцы в запрос. Также внизу будет отображаться SQL код представления.
Чтобы сохранить созданную таблицу щелкните правой кнопкой мыши по вкладке представления и выберите «сохранить…» либо откройте «файл» и выберите «сохранить представление» либо закройте представление и SQL Server автоматически предложит сохранить представление.
Создание триггеров
Триггер предназначен для автоматического запуска системой SQL Server при модифицировании какой-либо таблицы одним из трех операторов: UPDATE, INSERT или DELETE. Триггер запускается сервером автоматически при попытке изменения данных в таблице, с которой он связан. Все производимые им модификации данных выполняются в 1 транзакции с действием, вызвавшем срабатывание триггера. Соответственно, в случае обнаружения ошибки или нарушения целостности данных может произойти откат этой транзакции.
Момент запуска триггера определяется с помощью ключевых слов BEFORE (триггер запускается до выполнения связанного с ним события; например, до добавления записи) или AFTER (после события).
Кроме того, триггеры могут быть привязаны не к таблице, а к представлению. В этом случае с их помощью реализуется механизм «обновляемого представления» (т.к. представление представляет собой выборку, то при помощи него нельзя изменять\добавлять\удалять данные).
Шаблон создания триггера:
CREATE TRIGGER [Название триггера]
AFTER <Событие>
ON <Таблица>
BEGIN
<Выполняемые действия>
END;
Для создания триггера нужно открыть контейнер нужной таблицы и нажатием правой кнопкой мыши по контейнеру «триггеры» вызвать меню, в котором выбрать «Создать триггер»:
Далее надо ввести код триггера и запустить его - нажать на панели «Выполнить». При удачном выполнении триггера появится сообщение «Выполнение команд успешно завершено».
