Состав сооружений: решетки и песколовки: Решетки – это первое устройство в схеме очистных сооружений. Они представляют...
Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...
Топ:
Когда производится ограждение поезда, остановившегося на перегоне: Во всех случаях немедленно должно быть ограждено место препятствия для движения поездов на смежном пути двухпутного...
История развития методов оптимизации: теорема Куна-Таккера, метод Лагранжа, роль выпуклости в оптимизации...
Генеалогическое древо Султанов Османской империи: Османские правители, вначале, будучи еще бейлербеями Анатолии, женились на дочерях византийских императоров...
Интересное:
Лечение прогрессирующих форм рака: Одним из наиболее важных достижений экспериментальной химиотерапии опухолей, начатой в 60-х и реализованной в 70-х годах, является...
Как мы говорим и как мы слушаем: общение можно сравнить с огромным зонтиком, под которым скрыто все...
Мероприятия для защиты от морозного пучения грунтов: Инженерная защита от морозного (криогенного) пучения грунтов необходима для легких малоэтажных зданий и других сооружений...
Дисциплины:
|
из
5.00
|
Заказать работу |
Содержание книги
Поиск на нашем сайте
|
|
|
|
Лабораторная работа № 6
Проектирование представлений, хранимых процедур, триггеров
Проектирование представлений
Задание
1. Создать необновляемое представление и обновляемое представление для определенных категорий пользователей.
2. Привести примеры команд, подтверждающих, что данное представление является необновляемым / обновляемым.
3. Создать агрегирующее представление.
4. Создать представление, основанное на нескольких таблицах.
Проектирование хранимых процедур
Задание
Разработать процедуры, в которых предусмотрены операции добавления, удаления, изменения данных, а также какие-либо вычисления.
Проектирование триггеров
Задание.
Создать триггеры, срабатывающие при добавлении, удалении, обновлении данных. Ниже приведены примеры триггеров для различных предметных областей.
Примеры триггеров
Предметная область: Библиотека
Триггер: при удалении читателя, на руках у которого имеются книги, уменьшить количество экземпляров этих книг.
Предметная область: Оптовая база
Триггер: при удалении поставщика удаляются товары, поставлявшиеся только этим поставщиком.
Предметная область: Производство
Триггер: при удалении изделия материал, используемый только в этом изделии, помечается как неиспользуемый.
Предметная область: Автомастерская
Триггер: при досрочном завершении ремонта премия автомеханика увеличивается на 1 % стоимости ремонта за каждый выигранный день.
Предметная область: Сессия
Триггер: общий объем часов для группы вычисляется вновь при изменении объема часов дисциплины или при переназначении дисциплины на сессию.
Предметная область: Поликлиника
Триггер: больной-пенсионер направляется к врачу не ниже 2-й категории.
Предметная область: Телефонизация
Триггер: контроль - не может быть более 2 сблокированных телефонов.
Предметная область: Спорт
Триггер: исправление мирового рекорда при появлении соответствующего результата.
Предметная область: Сельскохозяйственные поставки
Триггер: при удалении предприятия, являющегося единственным поставщиком какой-то продукции, удаляется и эта продукция.
Предметная область: Городской транспорт
Триггер: количество машин в парке не может превышать сумму количеств машин на маршрутах.
Предметная область: Аэропорт
Триггер: количество проданных билетов не должно превышать числа мест на рейсе.
Предметная область: Деканат
Триггер: количество студентов, зачисленных на I курс, не может превышать число мест на факультете.
Предметная область: Автотранспортное предприятие
Триггер: при зачислении контролируется превышение числа штатных единиц и фонда зарплаты.
Предметная область: Театр
Триггер: если при назначении актера на роль оказывается, что роль уже «занята», в старом назначении делается отметка о снятии.
Предметная область: Справочная аптек
Триггер: при изменении количества медикаментов запись удаляется, если количество становится 0.
Предметная область: Отдел кадров
Триггер: при зачислении контролируется превышение числа штатных единиц и фонда зарплаты.
Лабораторная работа №7
Представления
Представления, или просмотры (VIEW), – это временные, производные (иначе - виртуальные) таблицы. Они являются объектами БД, информация в которых не хранится постоянно, как в базовых таблицах, а формируется динамически при обращении к ним. Обычные таблицы относятся к базовым, т.е. содержащим данные и постоянно находящимся на устройстве хранения информации. Представление не может существовать само по себе, а определяется только в терминах одной или нескольких таблиц. Применение представлений позволяет разработчику БД обеспечить каждому пользователю или группе пользователей наиболее подходящие способы работы с данными, что решает проблему простоты их использования и безопасности. Содержимое представлений выбирается из других таблиц с помощью выполнения запроса, причем при изменении значений в таблицах данные в представлении автоматически меняются. Представление - это фактически тот же запрос, который выполняется всякий раз при участии в какой-либо команде. Результат выполнения этого запроса в каждый момент времени становится содержанием представления. У пользователя создается впечатление, что он работает с настоящей, реально существующей таблицей.
Создания и изменения представлений представлены следующей командой:
<определение_просмотра>::= { CREATE| ALTER} VIEW имя_просмотра [(имя_столбца [,...n])] [WITH ENCRYPTION] AS SELECT_оператор [WITH CHECK OPTION]По умолчанию имена столбцов в представлении соответствуют именам столбцов в исходных таблицах. Явное указание имени столбца требуется для вычисляемых столбцов или при объединении нескольких таблиц, имеющих столбцы с одинаковыми именами. Имена столбцов перечисляются через запятую, в соответствии с порядком их следования в представлении.
Параметр WITH ENCRYPTION предписывает серверу шифровать SQL-код запроса, что гарантирует невозможность его несанкционированного просмотра и использования. Если при определении представления необходимо скрыть имена исходных таблиц и столбцов, а также алгоритм объединения данных, необходимо применить этот аргумент.
Параметр WITH CHECK OPTION предписывает серверу исполнять проверку изменений, производимых через представление, на соответствие критериям, определенным в операторе SELECT. Это означает, что не допускается выполнение изменений, которые приведут к исчезновению строки из представления. Такое случается, если для представления установлен горизонтальный фильтр и изменение данных приводит к несоответствию строки установленным фильтрам. Использование аргумента WITH CHECK OPTION гарантирует, что сделанные изменения будут отображены в представлении. Если пользователь пытается выполнить изменения, приводящие к исключению строки из представления, при заданном аргументе WITH CHECK OPTION сервер выдаст сообщение об ошибке и все изменения будут отклонены.
Представление можно использовать в команде так же, как и любую другую таблицу. К представлению можно строить запрос, модифицировать его (если оно отвечает определенным требованиям), соединять с другими таблицами. Содержание представления не фиксировано и обновляется каждый раз, когда на него ссылаются в команде. Представления значительно расширяют возможности управления данными. В частности, это прекрасный способ разрешить доступ к информации в таблице, скрыв часть данных.
|
|
|
Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...
Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...
Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначенные для поддерживания проводов на необходимой высоте над землей, водой...
Двойное оплодотворение у цветковых растений: Оплодотворение - это процесс слияния мужской и женской половых клеток с образованием зиготы...
© cyberpedia.su 2017-2026 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!