| engineerklub | Дата: Понедельник, 22.04.2024, 12:50 | Сообщение # 1 |
 Генералиссимус
Группа: Администраторы
Сообщений: 37397
Статус: Offline
| Сетевые базы данных. Вариант №7
Тип работы: Работа Лабораторная Форматы файлов: Microsoft Word Сдано в учебном заведении: ДО СИБГУТИ
Описание: Лабораторная работа № 1
1. Напишите запрос к таблице Покупателей, чей вывод может включить всех покупателей, причем с оценкой выше 100, если они не находятся в Лондоне 2. Напишите запрос, который вывел бы для каждого заказа (кроме заказов 3 и 5 января) его номер, стоимость заказа, имя продавца и размер комиссионных, полученных продавцом за этот заказ. 3. Напишите запрос, который выбрал бы самый ранний заказ для каждого продавца с сортировкой по убыванию имен продавцов. 4. Выведите имена и города всех заказчиков с рейтингом, отличным от Hoffmana, используя подзапрос. 5. Создайте представление на основе запроса из задания 1 и, используя представление, выведите данные о покупателях с рейтингом 100.
Лабораторная работа № 2
1. Создать таблицу для хранения данных о кинофильмах. Таблица должна содержать поле для уникального номера, названия кинофильма, размера бюджета. 2. Напишите команды для вставки в таблицу 8-10 записей о кинофильмах. Создайте последовательность и используйте ее в командах вставки для заполнения поля уникального номера. 3. Напишите команду удаления строк с данными о кинофильмах с нечетными номерами. Напишите команду отмены транзакции, а затем повторите команду удаления, но для четных номеров. Подтвердите транзакцию. 4. Составить и выполнить программу PL/SQL, которая, используя SELECT … INTO …, считывает из базы данных имя продавца, работающего в Лондоне, максимальную дату его заказов и выводит результат. Добавить в программу раздел Exception с обработчиком OTHERS, в котором определяется вид ошибки и выводится сообщения об этой ошибке 5. Составить и выполнить программу PL/SQL, которая, используя курсор, считывает из базы данных имена продавцов, чьи комиссионные меньше 0.14, и выводит результат.
Лабораторная работа № 3
1. Создать пакет, в который поместить функцию, которая возвращает суммарную длину двух строк, заданных в качестве аргументов. Вызвать процедуру пакета из безымянного блока. 2. Включите в пакет процедуру, которая считывает из базы данных информацию о покупателях из последних N (передать в параметре) по алфавиту городов и их заказах. Вызовите процедуру пакета из безымянного блока. 3. Включите в пакет процедуру, которая изменяет бюджеты в таблице кинофильмов из задания 1 лабораторной работы 2. Размеры бюджетов должны увеличиться на 5 % для кинофильмов, у которых названия короче, чем у фильма, указанного в параметре. 4. Создать триггер PL/SQL, который регистрирует изменение городов для покупателей с сохранением в журнале имени покупателя, прежнего и нового названия города. 5. Создать триггер PL/SQL, который запускается при вставке, изменении и удалении заказов. Триггер должен регистрировать тип и время операции и запрещать удаление, если количество заказов в таблице не превышает 10. Вывести содержимое журнала регистрации.
СКАЧАТЬ
|
| |
|
|