Вариант 43. Создайте запросы: «Экскаваторщики» (условная выборка);
«Количество отработанных персоналом часов за неделю» (итоговый запрос);
«Наряды в заданный промежуток времени» (параметрический запрос); «Общий список водителей и техники с количеством нарядов по каждой позиции»
128
(запрос на объединение); «Количество водителей техники по неделям года» (запрос по полю с типом дата).
Вариант 44. Создайте запросы: «Программы по желудочно-кишечным заболеваниям» (условная выборка); «Сводка отдыхающих за плановый период» (итоговый запрос); «Отдыхающие, завершающие курс оздоровления» (парамет- рический запрос); «Общий список врачей и отдыхающих с количеством про- грамм у каждого» (запрос на объединение); «Количество заболеваний по меся- цам» (запрос по полю с типом дата).
Вариант 45. Создайте запросы: «Экспедиции по Беларуси» (условная вы- борка); «Протяженность маршрутов по регионам» (итоговый запрос); «Пере- чень карт заданного региона» (параметрический запрос); «Общий список реги- онов и геологов с количеством экспедиций по каждой позиции» (запрос на объ- единение); «Количество карт по кварталам текущего года» (запрос по полю с типом дата).
Вариант 46. Создайте запросы: «Услуги, оказанные в текущем месяце» (условная выборка); «Сводка доходов по виду услуг за отчетный период» (ито- говый запрос); «Договора по установке программного обеспечения» (парамет- рический запрос); «Общий список клиентов и персонала с количеством догово- ров каждого» (запрос на объединение); «Количество договоров по годам» (за- прос по полю с типом дата).
ПРИЛОЖЕНИЕ 4
Таблица П.4.1
ИСКЛЮЧИТЕЛЬНЫЕ СИТУАЦИИ ORACLE
Exception
|
Oracle Error
|
SQLCODE Value
|
ACCESS_INTO_NULL
|
ORA-06530
|
6530
|
CASE_NOT_FOUND
|
ORA-06592
|
6592
|
COLLECTION_IS_NULL
|
ORA-06531
|
6531
|
CURSOR_ALREADY_OPEN
|
ORA-06511
|
6511
|
DUP_VAL_ON_INDEX
|
ORA-00001
|
1
|
INVALID_CURSOR
|
ORA-01001
|
1001
|
INVALID_NUMBER
|
ORA-01722
|
1722
|
LOGIN_DENIED
|
ORA-01017
|
1017
|
NO_DATA_FOUND
|
ORA-01403
|
+100
|
NOT_LOGGED_ON
|
ORA-01012
|
1012
|
PROGRAM_ERROR
|
ORA-06501
|
6501
|
ROWTYPE_MISMATCH
|
ORA-06504
|
6504
|
SELF_IS_NULL
|
ORA-30625
|
30625
|
STORAGE_ERROR
|
ORA-06500
|
6500
|
SUBSCRIPT_BEYOND_COUNT
|
ORA-06533
|
6533
|
SUBSCRIPT_OUTSIDE_LIMIT
|
ORA-06532
|
6532
|
SYS_INVALID_ROWID
|
ORA-01410
|
1410
|
TIMEOUT_ON_RESOURCE
|
ORA-00051
|
51
|
TOO_MANY_ROWS
|
ORA-01422
|
1422
|
VALUE_ERROR
|
ORA-06502
|
6502
|
ZERO_DIVIDE
|
ORA-01476
|
1476
|
ПРИЛОЖЕНИЕ 5
ВАРИАНТЫ ЗАДАНИЙ ДЛЯ НАПИСАНИЯ ПРОЦЕДУР И ФУНКЦИЙ
Вариант 1. Написать процедуру, которая повышает заработную плату со- трудников:
до размера в 1,5 прожиточного минимума, если оклад меньше прожи- точного минимума;
на 5 %, если оклад больше, чем 1,5 прожиточного минимума.
Входной параметр – прожиточный минимум. Выводить количество обнов- ленных записей.
Создать функцию, которая определяет, работает ли тот или иной сотруд- ник на указанной кафедре. Функция возвращает или значение FALSE и в пара- метре OUT соответствующий комментарий, или – TRUE и в параметре OUT – номер телефона сотрудника.
Вариант 2. Написать процедуру, которая формирует заказ на товары, кото- рых осталось меньше необходимого запаса и выводит его на экран, подсчитывая общий итог. Величину минимального запаса передавать во входном параметре.
Создать функцию, возвращающую пустую строку или строку «закончился срок реализации», если дата поставки плюс срок реализации партии товара больше текущей даты и времени. Поля даты поставки и срока реализации долж- ны присутствовать в таблицах БД.
Вариант 3. Создать процедуру, копирующую строки с информацией о подписках за текущий месяц, во вспомогательную таблицу. Все коды в таблице подписок должны быть заменены на реальные данные из связанных таблиц.
Написать функцию, которая выводит информацию о подписчиках, которые оформили количество подписок за указанный год больше, чем указано во вход- ном параметре. Возвращать общее количество подписчиков.
Вариант 4. Создать процедуру, распечатывающую список товаров с их общим количеством продаж, старой и новой ценой (для товаров, которые не продавались в течение месяца снизить цену на 10 %) по отделам:
Отдел 1
|
товар1
|
количество
|
старая_цена
|
новая_цена
|
товар2
|
количество
|
старая_цена
|
новая_цена
|
Отдел 2
|
товар1
|
количество
|
старая_цена
|
новая_цена
|
товар2
|
количество
|
старая_цена
|
новая_цена
|
Написать функцию, которая возвращает общее количество продавцов, ра- ботающих в отделах. Вывести также количество продавцов по отделам и про- давцов, которые еще не участвовали в продажах.
Вариант 5. Создать процедуру расчета общего количества отработанных часов в виде
Отдел 1
|
фамилия1
|
количество часов
|
фамилияN
|
количество часов
|
Отдел 2
|
фамилия1
|
количество часов
|
фамилияN
|
количество часов
|
Написать функцию, определяющую, являются ли сотрудники указанного отдела пенсионерами с учетом разного возраста выхода на пенсию мужчин и женщин. В результате работы выводить ФИО сотрудников отдела с пометками
«пенсионер» или «не достигнут пенсионный возраст», а также возвращать общее количество пенсионеров.
Достарыңызбен бөлісу: |