engineerklub | Дата: Воскресенье, 06.03.2022, 08:10 | Сообщение # 1 |
Генералиссимус
Группа: Администраторы
Сообщений: 29498
Статус: Offline
| Сетевые базы данных (ДВ 7.1). Вариант 6
Тип работы: Работа Лабораторная
Описание: Исходные данные для варианта 6 смотри скрин и по тексту
Лабораторная работа №1 Тема 1: Типы данных SQL Oracle. Стандартные функции. Арифметические и логические выражения. Тема 2: Агрегатные функции. Группировка строк. Сортировка строк
Вариант 6. 1. Напишите запрос к таблице Покупателей, чей вывод может включить всех покупателей, причем с оценкой выше 200, если они не находятся в San Jose 2. Напишите запрос, который вывел бы для каждого заказа его номер, стоимость в рублях (по текущему курсу) и имя заказчика. Данные вывести для заказчиков, размещенных в Лондоне и в Риме. 3. Напишите запрос, который выбрал бы наименьший номер заказа на каждое число с сортировкой по убыванию чисел. 4. Напишите запрос, который выводит имена и города всех продавцов, у которых процент комиссионных меньше, чем у Motiki, используя подзапрос. 5. Создайте представление на основе запроса из задания 1 и, используя это представление, выведите данные о покупателях из San Jose.
Лабораторная работа №2 Тема 1: Выборка данных из объединенных таблиц (в лекциях см. п.3 1.1). Тема 2: Подзапросы (в лекциях см. п. 3.1.1). Тема 3: Создание таблиц (в лекциях см. п.3.3.1).
Вариант 6. 1. Создать таблицу для хранения данных о марках автомобилей. Таблица должна содержать поле для уникального номера, названия автомобиля, стоимости. 2. Напишите команды для вставки в таблицу 8-10 записей об автомобилях. Создайте последовательность и используйте ее в командах вставки для заполнения поля уникального номера. 3. Напишите команду удаления строк с данными об автомобилях с нечетными номерами. Напишите команду отмены транзакции, а затем повторите команду удаления, но для четных номеров. Подтвердите транзакцию. 4. Составить и выполнить программу PL/SQL, которая, используя SELECT … INTO …, считывает из базы данных имена продавцов, чьи комиссионные меньше 0.13, и выводит результат. Добавить в программу раздел Exception с обработчиком OTHERS, в котором определяется вид ошибки и выводится сообщения об этой ошибке. 5. Составить и выполнить программу PL/SQL, которая, используя курсор, считывает из базы данных имена покупателей, чей рейтинг больше 100, и выводит результат.
Лабораторная работа №3 Тема 1: Создание таблиц. Последовательности. Тема 2: Вставка, изменение и удаление данных из таблиц. Тема 3: Транзакции.
Вариант 6. 1. Создать пакет, в который поместить функцию, которая принимает в параметрах Ваши фамилию, имя и отчество, а возвращает фамилию и инициалы. Вызвать процедуру пакета из безымянного блока. 2. Включите в пакет процедуру, которая считывает из базы данных информацию о трех самых поздних заказах, выполненных до даты, переданной в параметре. Вызовите процедуру пакета из безымянного блока. 3. Включите в пакет процедуру, которая изменяет стоимости в таблице марок автомобилей из задания 1 лабораторной работы 2. Стоимость должна увеличиться на 10 % для автомобилей, у которых названия длиннее, чем у автомобиля, указанного в параметре. 4. Создать триггер PL/SQL, который запрещает удаление продавцов, если количество выполненных им заказов больше трех. 5. Создать триггер PL/SQL, который регистрирует в журнальной таблице операции вставки, изменения и удаление заказов. Регистрация выполняется только в нерабочее время и включает имя пользователя, вид операции и стоимость заказа. Вывести содержимое журнала регистрации.
СКАЧАТЬ
|
|
| |