ЛАБОРАТОРНАЯ РАБОТА № 9
Цель:
1. Практически освоить создание и использование элементарных триггеров.
2. Научиться использовать предопределенные таблицы в теле триггеров.
Справочный материал:
1. Конспект курса.
Упражнения:
Перед выполнением лабораторной работы необходимо войти в сеть, затем в систему MS SQL Server и SQL Query Analyser, а также установить связь пользователя с базой данных (аналогично описанному сценарию в лабораторной работе № 1).
Рис. 30
Упражнение 1
Разработать триггер, который срабатывает при выполнении любого из трех операторов: update, delete, insert в таблице vuz, с целью выдачи сообщения о необходимости выполнения такого же оператора в таблице vuz_gorod.
Для создания триггера в верхней области окна необходимо ввести:
create trigger vuztrig1 on vuz
for insert, update, delete as
select ‘Необходимо выполнить такую же коррекцию в таблице
vuz_gorod’ [F5]
Если при наборе этой команды будет допущена синтаксическая ошибка, то в нижней области окна будет выдано сообщение об ошибке.
Для того, чтобы убедиться, что триггер создан, можно воспользоваться командой sp_help. Чтобы проверить срабатывание этого триггера, необходимо ввести один из трех операторов (update, delete, insert) для таблицы vuz, например:
в верхней области окна необходимо ввести:
insert vuz values
(7962902, 'СТАВР. МЕД. ИНСТ.') [F5]
delete vuz where cod = 7962902 [F5]
В нижней области окна будет выдано сообщение из триггера vuztrig1 (см. рис. 31).
В теле триггеров можно использовать предопределенные таблицы с именами inserted и deleted (см. конспект курса).
Рис. 31
Упражнение 2
Разработать триггер, который срабатывает при добавлении новых записей в таблицу vuz_gorod, с целью выдачи сообщения о необходимости добавления новой записи в таблицу vuz.
Для создания триггера в верхней области окна необходимо ввести:
create trigger vuztrig2 on vuz_gorod
for insert as
if (select count(*) from inserted)>0
select ‘Необходимо добавить запись в таблицу vuz’ [F5]
Чтобы проверить срабатывание этого триггера, необходимо ввести оператор insert для таблицы vuz_gorod, например:
в верхней области окна необходимо ввести:
insert vuz_gorod values
(7115842, 'С.-П. ИИЖТ', '002', 'САНКТ-ПЕТЕРБУРГ', '01', 'РОССИЯ') [F5]
В нижней области окна будет выдано сообщение из триггера vuztrig2 (см. рис. 32).
Рис. 32
Упражнение 3
Разработать триггер, который срабатывает при удалении записей из таблицы vuz_gorod, с целью выдачи сообщения о необходимости удаления старой записи из таблицы vuz.
Для создания триггера в верхней области окна необходимо ввести:
create trigger vuztrig3 on vuz_gorod
for delete as
if (select count(*) from deleted)>0
select ‘Необходимо удалить старую запись из таблицы vuz’ [F5]
Чтобы проверить срабатывание этого триггера, необходимо ввести оператор delete для таблицы vuz_gorod, например:
в верхней области окна необходимо ввести:
delete vuz_gorod
where cod_vuza=7115842 [F5]
В нижней области окна будет выдано сообщение из триггера vuztrig3 (см. рис. 33).
Упражнение 4
Разработать триггер, который срабатывает при вводе в таблицу poss1 неправильных значений в поля vuz_k (учебное заведение - код) и spec (шифр специальности), с целью выдачи сообщений об ошибках в соответствующих полях.
Таблица poss1 имеет такую же структуру, что и таблица poss (за исключением поля “дата рождения”), и предназначена для накопления новых записей с последующим их копированием в таблицу poss (в таблицу poss необходимо вводить безошибочные записи).
Для создания этого триггера необходимо создать две таблицы, каждая из которых состоит из одного поля: 1) поле, содержащее все коды учебных заведений; 2) поле, содержащее все шифры специальностей. Другими
Рис. 33
словами, должны быть созданы домены (области допустимых значений) для этих двух полей.
Для создания таблицы только кодов учебных заведений необходимо в верхней области окна ввести:
create table codv (vkod integer) [F5]
а для создания таблицы только шифров специальностей в верхней области окна необходимо ввести:
create table cods (skod char(6)) [F5]
Для загрузки этих таблиц данными необходимо использовать файлы, содержащие пакеты из команд insert типа:
insert codv values (<код учебного заведения>)...
insert cods values ('<шифр специальности>')...
После этого для создания триггера в верхней области окна необходимо ввести:
create trigger vuz_spec on poss1
for insert as
if (select count(*) from codv, inserted
where codv.vkod=inserted.vuz_k)=0
select 'значение поля vuz_k не принадлежит домену'
if (select count(*) from cods, inserted
where cods.skod=inserted.spec)=0
select 'значение поля spec не принадлежит домену' [F5]
Триггер vuz_spec сравнивает введенное значение поля vuz_k или spec со всеми значениями поля в таблице codv (всеми кодами учебных заведений) или в таблице cods (всеми шифрами специальностей) и в случаях несовпадения выдает соответствующие сообщения.
Чтобы проверить срабатывание этого триггера, необходимо ввести оператор insert для таблицы poss1, содержащий либо неправильный код учебного заведения, либо неправильный шифр специальности, либо то и другое, например (ошибочные коды подчеркнуты):
в верхней области окна необходимо ввести:
insert poss1 values
insert poss1 values
(699991, 'ЖУРАВЛЕВ АНДРЕЙ АНДРЕЕВИЧ', '01','02','75', 'M', '0', '001991', '05', 0129999, '08', '93', '03', '98') [F5]
В нижней области окна будет выдано сообщение из триггера vuz_spec (см.рис. 34).
Рис. 34
Задание:
1) Создать триггер на проверку правильности ввода значений в одно из полей вашей информационной таблицы: «Год приема» (значения от ‘00’ до ‘99’), «Год окончания» (значения от ‘00’ до ‘99’), «Код категории обучения» (значения от ’01’ до ‘17’), «Код семейного положения» (значения от ‘0’ до ‘3’); значения этих полей должны быть заданы в отдельной таблице вашей БД;
2) Создать 3 отдельных триггера (для операторов INSERT, UPDATE и DELETE) для автоматического внесения изменений в таблицу VUZ (поля «Код вуза» и «Название вуза»), если вносятся такие же изменения в таблицу VUZ_GOROD.
ПРИЛОЖЕНИЕ I
ВАРИАНТЫ ЗАДАНИЙ НА ВЫПОЛНЕНИЕ ЛАБОРАТОРНОЙ РАБОТЫ №2
Задание 1
Выдать список студентов и аспирантов вашего государства только 1966 года рождения. Отсортировать данные по учебным заведениям и категориям обучения.
Задание 2
Выдать список выпускников 93 и 94 г.г. вашего государства по специальностям от 0401 до 0409. Отсортировать данные по специальностям и годам окончания.
Задание 3
Выдать список учащихся вашего государства, принятых на учебу в 89 и 91 г.г. только 67 года рождения. Отсортировать данные по годам приема и учебным заведениям.
Задание 4
Выдать список учащихся вашего государства по специальностям от 0601 до 0620 и только мужского пола. Отсортировать данные по специальностям и учебным заведениям.
Задание 5
Выдать список учащихся вашего государства только женского пола, незамужних и по специальности 0401. Отсортировать данные по учебным заведениям.
Задание 6
Выдать список выпускников 93 и 95 г.г. вашего государства и только 1964 года рождения. Отсортировать данные по годам окончания и учебным заведениям.
Задание 7
Выдать список студентов и стажеров вашего государства и только мужского пола. Отсортировать данные по категориям обучения и учебным заведениям.
Задание 8
Выдать список студентов вашего государства, принятых на учебу в 90 и 91 г.г. Отсортировать данные по учебным заведениям и годам приема.
Задание 9
Выдать список выпускников 94 года вашего государства по специальностям 0101, 0201 и 0401. Отсортировать данные по специальностям и учебным заведениям.
Задание 10
Выдать список учащихся вашего государства только мужского пола и с фамилиями, начинающимися на букву К. Отсортировать данные по учебным заведениям.
Задание 11
Выдать список учащихся 1965 года рождения вашего государства по специальностям от 0201 до 0230. Данные отсортировать по специальностям и учебным заведениям.
Задание 12
Выдать список учащихся вашего государства только женского пола и с именами, не заканчивающимися на букву Я. Данные отсортировать по специальностям.
Задание 13
Выдать список учащихся вашего государства, принятых на учебу в 1990 году и по всем специальностям, кроме 0101 и 0301. Данные отсортировать по учебным заведениям и специальностям.
Задание 14
Выдать список выпускников 95 и 96 г.г. вашего государства по всем годам рождения, кроме 1963 г. Данные отсортировать по годам окончания и учебным заведениям.
Задание 15
Выдать список студентов и аспирантов вашего государства и с фамилиями, начинающимися на букву М. Данные отсортировать по категориям обучения и учебным заведениям.
ПРИЛОЖЕНИЕ II
ВАРИАНТЫ ЗАДАНИЙ НА ВЫПОЛНЕНИЕ ЛАБОРАТОРНОЙ РАБОТЫ №3
Задание 1
Выдать список студентов и аспирантов вашего государства и с фамилиями, начинающимися на букву М. Отчет должен включать все поля, кроме полей НОМЕР и СЕМ_ПОЛОЖЕНИЕ. Поля КАТ_ОБУЧЕНИЯ_К и ВУЗ_К должны быть раскодированы. Данные отсортировать по категориям обучения и учебным заведениям.
Задание 2
Выдать список выпускников 95 и 96 г.г. вашего государства по всем годам рождения, кроме 1963. Отчет должен включать все поля, кроме полей НОМЕР и СЕМ_ПОЛОЖЕНИЕ. Поля КАТ_ОБУЧЕНИЯ_К и ВУЗ_К должны быть раскодированы. Данные отсортировать по годам окончания и учебным заведениям.
Задание 3
Выдать список учащихся вашего государства, принятых на учебу в 1990 году и по всем специальностям, кроме 0101 и 0301. Отчет должен включать все поля, кроме МЕСЯЦ_ПРИЕМА, ГОД_ПРИЕМА, НОМЕР. Поля СЕМ_ПОЛОЖЕНИЕ_К, КАТ_ОБУЧЕНИЯ_К и ВУЗ_К должны быть раскодированы. Данные отсортировать по учебным заведениям и специальностям.
Задание 4
Выдать список учащихся вашего государства только женского пола и с именами, не заканчивающимися на букву А. Отчет должен включать все поля, кроме полей НОМЕР и ПОЛ. Поля СЕМ_ПОЛОЖЕНИЕ_К, ВУЗ_К и КАТ_ОБУЧЕНИЯ_К должны быть раскодированы. Данные отсортировать по специальностям.
Задание 5
Выдать список учащихся 1965 года рождения вашего государства по специальностям от 0201 до 0230. Отчет должен включать все поля, кроме полей НОМЕР и ДАТА_РОЖДЕНИЯ. Поля СЕМ_ПОЛОЖЕНИЕ_К, ВУЗ_К и КАТ_ОБУЧЕНИЯ_К должны быть раскодированы. Данные отсортировать по специальностям и учебным заведениям.
Задание 6
Выдать список учащихся вашего государства только мужского пола и с фамилиями, начинающимися на букву К. Отчет должен включать все поля, кроме полей НОМЕР и ПОЛ. Поля СЕМ_ПОЛОЖЕНИЕ_К, КАТ_ОБУЧЕНИЯ_К и ВУЗ_К должны быть раскодированы. Данные отсортировать по учебным заведениям.
Задание 7
Выдать список выпускников 94 года вашего государства по специальностям 0101, 0201 и 0401. Отчет должен включать все поля, кроме полей НОМЕР, МЕСЯЦ_ОКОНЧАНИЯ и ГОД_ОКОНЧАНИЯ. Поля СЕМ_ПОЛОЖЕНИЕ_К, КАТ_ОБУЧЕНИЯ_К и ВУЗ_К должны быть раскодированы. Данные отсортировать по специальностям и учебным заведениям.
Задание 8
Выдать список студентов и аспирантов вашего государства только 66 года рождения. Отчет должен включать все поля, кроме полей НОМЕР и ДАТА_РОЖДЕНИЯ. Поля СЕМ_ПОЛОЖЕНИЕ_К, КАТ_ОБУЧЕНИЯ_К и ВУЗ_К должны быть раскодированы. Данные отсортировать по учебным заведениям и категориям обучения.
Задание 9
Выдать список выпускников 93 и 94 г.г. вашего государства по специальностям от 0401 до 0409. Отчет должен включать все поля, кроме полей НОМЕР и СЕМ_ПОЛОЖЕНИЕ_К. Поля КАТ_ОБУЧЕНИЯ_К и ВУЗ_К должны быть раскодированы. Данные отсортировать по специальностям и годам окончания.
Задание 10
Выдать список учащихся вашего государства, принятых на учебу в 89 и 91 г.г. только 67 года рождения. Отчет должен включать все поля, кроме полей НОМЕР и ДАТА_РОЖДЕНИЯ. Поля СЕМ_ПОЛОЖЕНИЕ_К, ВУЗ_К и КАТ_ОБУЧЕНИЯ_К должны быть раскодированы. Данные отсортировать по годам приема и учебным заведениям.
Задание 11
Выдать список учащихся вашего государства по специальностям от 0601 до 0620 и только мужского пола. Отчет должен включать все поля, кроме полей НОМЕР и ПОЛ. Поля СЕМ_ПОЛОЖЕНИЕ_К, КАТ_ОБУЧЕНИЯ_К и ВУЗ_К должны быть раскодированы. Данные отсортировать по специальностям и учебным заведениям.
Задание 12
Выдать список учащихся вашего государства только женского пола, незамужних и по специальности 0401. Отчет должен содержать все поля, кроме полей НОМЕР, ПОЛ, СЕМ_ПОЛОЖЕНИЕ_К и СПЕЦИАЛЬНОСТЬ. Поля КАТ_ОБУЧЕНИЯ_К и ВУЗ_К должны быть раскодированы. Данные отсортировать по учебным заведениям.
Задание 13
Выдать список выпускников 93 и 95 г.г. вашего государства и только 1964 года рождения. Отчет должен включать все поля, кроме полей НОМЕР и ДАТА_РОЖДЕНИЯ. Поля СЕМ_ПОЛОЖЕНИЕ_К, КАТ_ОБУЧЕНИЯ_К и ВУЗ_К должны быть раскодированы. Данные отсортировать по годам окончания и учебным заведениям.
Задание 14
Выдать список студентов и стажеров вашего государства и только мужского пола. Отчет должен включать все поля, кроме полей НОМЕР, ПОЛ и СЕМ_ПОЛОЖЕНИЕ_К. Поля КАТ_ОБУЧЕНИЯ_К и ВУЗ_К должны быть раскодированы. Данные отсортировать по категориям обучения и учебным заведениям.
Задание 15
Выдать список студентов вашего государства, принятых на учебу в 90 и 91 г.г. Отчет должен включать все поля, кроме полей НОМЕР и КАТ_ОБУЧЕНИЯ_К. Поля СЕМ_ПОЛОЖЕНИЕ_К и ВУЗ_К должны быть раскодированы. Данные отсортировать по учебным заведениям и годам приема.
ПРИЛОЖЕНИЕ III
ВАРИАНТЫ ЗАДАНИЙ НА ВЫПОЛНЕНИЕ ЛАБОРАТОРНОЙ РАБОТЫ №4
Задание 1
Выдать список учащихся САНКТ-ПЕТЕРБУРГА (код 002) только медицинских специальностей (шифры от 000401 до 000420 и от 140001 до 150050). В отчете должен быть соответствующий заголовок и все поля, кроме полей НОМЕР и СЕМ_ПОЛОЖЕНИЕ_К. Данные отсортировать по учебным заведениям, категориям обучения и специальностям.
Задание 2
Выдать список студентов и аспирантов вашего государства только 1965 года рождения и только холостых. В отчете должен быть соответствующий заголовок и все поля, кроме полей НОМЕР, ДАТА_РОЖДЕНИЯ и СЕМ_ПОЛОЖЕНИЕ_К. Данные отсортировать по категориям обучения и учебным заведениям.
Задание 3
Выдать список учащихся всех городов вашего государства, кроме столицы, и только мужского пола. В отчете должен быть соответствующий заголовок и все поля, кроме полей НОМЕР и ПОЛ. Данные отсортировать по учебным заведениям, годам окончания и специальностям.
Задание 4
Выдать список выпускников 93 и 94 г.г. вашего государства и только студентов. В отчете должен быть заголовок и все поля, кроме полей: НОМЕР и КАТ_ОБУЧЕНИЯ_К. Данные отсортировать по годам окончания, специальностям и учебным заведениям.
Задание 5
Выдать список учащихся вашего государства, принятых на учебу в 87, 89 и 91 г.г., имеющих год рождения 1964 и по специальностям 0101, 0201, 0301, 0401 и 0501. В отчете должен быть соответствующий заголовок и все поля, кроме НОМЕР и ДАТА_РОЖДЕНИЯ. Данные отсортировать по годам приема, специальностям и учебным заведениям.
Задание 6
Выдать список учащихся и стажеров вашего государства по первым десяти группам специальностей (от 0101 до 1099). В отчете должен быть соответствующий заголовок и все поля, кроме полей МЕСЯЦ_ПРИЕМА, МЕСЯЦ_ОКОНЧАНИЯ и НОМЕР. Данные отсортировать по категориям обучения, специальностям и учебным заведениям.
Задание 7
Выдать список выпускников 92 и 95 г. г. вашего государства только экономических специальностей (шифры от 0601 до 0720 и от 080001 до 080099) и только мужчин. В отчете должен быть соответствующий заголовок и все поля, кроме полей НОМЕР и ПОЛ. Данные отсортировать по годам окончания, учебным заведениям и специальностям.
Задание 8
Выдать список учащихся столицы вашего государства и только женского пола. В отчете должен быть соответствующий заголовок и все поля, кроме полей НОМЕР, ПОЛ и СЕМ_ПОЛОЖЕНИЕ_К. Данные отсортировать по учебным заведениям и специальностям.
Задание 9
Выдать список выпускников 94 и 95 г.г. вашего государства только студенческих специальностей (категории обучения: студент и студент-заочник, шифры специальностей от 0101 до 3199). В отчете должен быть соответствующий заголовок и все поля, кроме полей: НОМЕР и КАТ_ОБУЧЕНИЯ_К. Данные отсортировать по годам окончания, специальностям и учебным заведениям.
Задание 10
Выдать список учащихся столицы вашего государства только экономических специальностей (шифры от 0601 до 0720 и от 080001 до 080099). В отчете должен быть соответствующий заголовок и все поля, кроме полей НОМЕР и СЕМ_ПОЛОЖЕНИЕ_К. Данные отсортировать по учебным заведениям, категориям обучения и специальностям.
Задание 11
Выдать список учащихся вашего государства, принятых на учебу 88 и 90 г.г., имеющих год рождения 1966 и по специальностям 0601, 0701, 1001, 1501 и 1801. В отчете должен быть соответствующий заголовок и все поля, кроме полей НОМЕР и ДАТА_РОЖДЕНИЯ. Данные отсортировать по годам приема, специальностям и учебным заведениям.
Задание 12
Выдать список учащихся всех городов вашего государства, кроме столицы, и только мужского пола. В отчете должен быть соответствующий заголовок и все поля, кроме полей НОМЕР и ПОЛ. Данные отсортировать по учебным заведениям, годам окончания и специальностям.
Задание 13
Выдать список студентов и учащихся вашего государства по вторым десяти группам специальностей (категории обучения от '03' до '05' и шифры специальностей от 1101 до 2099). В отчете должен быть соответствующий заголовок и все поля, кроме полей НОМЕР, МЕСЯЦ_ПРИЕМА и МЕСЯЦ_ОКОНЧАНИЯ. Данные отсортировать по категориям обучения, специальностям и учебным заведениям.
Задание 14
Выдать список выпускников 92 и 95 г.г. вашего государства только медицинских специальностей (шифры от 0401 до 0420 и от 140001 до 150099) и только мужчин. В отчете должен быть соответствующий заголовок и все поля, кроме полей НОМЕР и ПОЛ. Данные отсортировать по годам окончания, учебным заведениям и специальностям.
Задание 15
Выдать список студентов и аспирантов вашего государства только 1965 года рождения и только холостых. В отчете должен быть соответствующий заголовок и все поля, кроме полей НОМЕР, ДАТА_РОЖДЕНИЯ и СЕМ_ПОЛОЖЕНИЕ_К. Данные отсортировать по категориям обучения и учебным заведениям.
Задание 16
Выдать список выпускников 93 и 94 г.г. вашего государства только мужского пола и только 1963 года рождения. В отчете должен быть соответствующий заголовок и все поля, кроме полей НОМЕР, ПОЛ и ДАТА_РОЖДЕНИЯ. Данные отсортировать по годам окончания, учебным заведениям и специальностям.
ПРИЛОЖЕНИЕ IV
ВАРИАНТЫ ЗАДАНИЙ НА ВЫПОЛНЕНИЕ ЛАБОРАТОРНЫХ РАБОТ №5, №7
Задание 1
Выдать статистику по учебным заведениям вашего государства только прием 1990 года. Отчет должен начинаться заголовком и цифрой общим количеством записей по запросу (по приему 90-го года). Далее таблица, включающая перечень учебных заведений с цифрами, не равными нулю.
Задание 2
Выдать статистику по городам вашего государства. Отчет должен начинаться с соответствующего заголовка и цифры - общего количества записей по запросу. Далее таблица, включающая перечень городов с цифрами, не равными нулю.
Задание 3
Выдать статистику по вашему государству по следующим специальностям: 0202, 0203, 0205, 0206 (общее число по каждой специальности), а также в каких учебных заведениях и сколько обучается по этим специальностям. Отчет должен начинаться с соответствующего заголовка. Далее четыре таблицы, где каждая таблица начинается с заголовка: СПЕЦИАЛЬНОСТЬ <шифр> - ВСЕГО <цифра> (не равная нулю), а заканчивается перечнем учебных заведений с цифрами, не равными нулю.
Задание 4
Выдать статистику по учебным заведениям вашего государства и только по лицам мужского пола. Отчет должен начинаться с заголовка и цифры - общего количества записей по запросу (всего мужчин). Далее таблица, включающая перечень учебных заведений с цифрами, не равными нулю.
Задание 5
Выдать статистику по всем специальностям вашего государства и только по студентам, заканчивающим учебу в 1994 году. Отчет должен начинаться с соответствующего заголовка и цифры - общего количества записей по запросу (всего студентов-выпускников 1994 г.). Далее таблица, включающая перечень шифров специальностей с цифрами, не равными нулю.
Задание 6
Выдать статистику по годам приема учащихся вашего государства. Отчет должен начинаться с соответствующего заголовка и цифры - общего количества записей по запросу. Далее таблица, включающая перечень годов приема с цифрами, не равными нулю.
Задание 7
Выдать статистику по годам окончания учебы учащихся вашего государства. Отчет должен начинаться с соответствующего заголовка и цифры - общего количества записей по запросу. Далее таблица, включающая перечень годов окончания с цифрами, не равными нулю.
Задание 8
Выдать статистику по категориям обучения учащихся вашего государства только прием 1991 года. Отчет должен начинаться заголовком и цифрой - общим количеством записей по запросу (по приему 91-го года). Далее таблица, включающая перечень категорий обучения с цифрами, не равными нулю.
Задание 9
Выдать статистику по вашему государству по следующим специальностям: 0401 , 0402, 0403 и 0405 (общее число по каждой специальности), а также количества мужчин и женщин по каждой из этих специальностей. Отчет должен начинаться с соответствующего заголовка. Далее таблица из четырех строчек, где каждая строчка включает шифр специальности и 3 цифры: всего, количество мужчин и количество женщин.
Задание 10
Выдать статистику по семейному положению учащихся вашего государства, заканчивающих учебу в 1994 или в 1995 году. Отчет должен начинаться с соответствующего заголовка. Далее - две таблицы, где каждая таблица начинается с заголовка: ГОД ВЫПУСКА <год> - ВСЕГО <цифра> (не равная нулю), а заканчивается перечнем семейных положений с цифрами, не равными нулю.
Задание 11
Выдать статистику по городам вашего государства и только по студентам (исключая другие категории обучения). Отчет должен начинаться с соответствующего заголовка и цифры - общего количества записей по запросу (всего студентов). Далее таблица, включающая перечень городов с цифрами, не равными нулю.
Задание 12
Выдать статистику по учебным заведениям вашего государства, включая цифры по выпуску 1994 года. Отчет должен начинаться с заголовка и цифры - общего количества записей по запросу. Далее таблица, включающая перечень названий учебных заведений с двумя цифрами (у каждого учебного заведения): 1) всего по учебному заведению (не равная нулю); 2) выпуск 1994 года.
Задание 13
Выдать статистику по категориям обучения учащихся вашего государства, исключая студентов-заочников и аспирантов-заочников. Отчет должен начинаться с соответствующего заголовка и цифры - общего количества записей по запросу. Далее таблица, включающая перечень требуемых категорий обучения с цифрами, не равными нулю.
Задание 14
Выдать статистику по специальностям 4-ой, 5-ой и 6-ой групп (т. е. специальности от 0401 до 0699) учащихся вашего государства. Отчет должен начинаться с соответствующего заголовка и цифры - общего количества записей по запросу. Далее таблица, включающая перечень требуемых шифров специальностей с цифрами, не равными нулю.
Задание 15
Выдать статистику по учебным заведениям столицы вашего государства. Отчет должен начинаться с заголовка, включающего название города и цифру - общее количество записей по запросу (всего по столице). Далее таблица, включающая перечень требуемых учебных заведений с цифрами, не равными нулю.
ПРИЛОЖЕНИЕ V
ВАРИАНТЫ ЗАДАНИЙ НА ВЫПОЛНЕНИЕ ЛАБОРАТОРНОЙ РАБОТЫ №8
Задание 1
Выдать статистику по городам и специальностям вашего государства. Очет должен начинаться заголовком и цифрой - общим количеством записей по запросу. Далее совокупность таблиц, где каждая таблица начинается с заголовка: ГОРОД <название> - ВСЕГО <цифра> (где <цифра> не равна нулю), а заканчивается перечнем шифров специальностей с цифрами, не равными нулю.
Задание 2
Выдать статистику по городам и учебным заведениям вашего государства. Отчет должен начинаться соответствующим заголовком. Далее должна следовать совокупность таблиц, каждая из которых включает перечень учебных заведений одного города с цифрами, не равными нулю (последняя строка таблицы представляет собой:ГОРОД <название> - ВСЕГО <цифра>, где <цифра> не равна 0). Заканчивается отчет цифрой - общим количеством записей по запросу.
Задание 3
Выдать статистику по городам и категориям обучения вашего государства. Отчет должен начинаться с заголовка и цифры - общего количества записей по запросу. Далее совокупность таблиц, где каждая таблица начинается с заголовка: ГОРОД <название> - ВСЕГО <цифра>, где <цифра> ^= 0, а заканчивается перечнем категорий обучения с цифрами, не равными нулю.
Задание 4
Выдать статистику по всем учебным заведениям и категориям обучения вашего государства. Отчет должен начинаться с заголовка и цифры - общего количества записей по запросу. Далее совокупность таблиц, где каждая таблица начинается с заголовка: <название учебного заведения> - <цифра>, не равная нулю, а заканчивается перечнем категорий обучения с цифрами, не равными нулю.
Задание 5
Выдать статистику по учебным заведениям и категориям обучения вашего государства, включая цифры по выпуску 1993 года и по приему 1990 года по каждой категории обучения. Отчет должен начинаться с заголовка и цифры - общего количества записей по запросу. Далее совокупность таблиц, где каждая таблица начинается с заголовка : <название учебного заведения> - <цифра>, не равная нулю, а заканчивается перечнем категорий обучения с тремя цифрами: 1) всего (не равная нулю); 2) выпуск 1993 г.; 3) прием 1990 г.
Задание 6
Выдать статистику по учебным заведениям и годам окончания вашего государства. Отчет должен начинаться с заголовка и цифры - общего количества записей по запросу. Далее совокупность таблиц, где каждая таблица начинается с заголовка: <название учебного заведения> <цифра>, не равная нулю, а заканчивается перечнем годов окончания с цифрами, не равными нулю.
Задание 7
Выдать статистику по выпуску 1994 года вашего государства по всем учебным заведениям и категориям обучения. Отчет должен начинаться с заголовка и цифры - общего количества записей по запросу (выпуску 1994 г.). Далее перечень таблиц, где каждая таблица начинается с заголовка: <название учебного заведения> - <цифра>, не равная нулю, а заканчивается перечнем категорий обучения с цифрами, не равными нулю.
Задание 8
Выдать статистику по годам приема и по специальностям учащихся вашего государства. Отчет должен начинаться с заголовка и цифры общего количества записей по запросу. Далее совокупность таблиц, где каждая таблица начинается с заголовка: <год приема> - <цифра>, не равная нулю, а заканчивается перечнем шифров специальностей с цифрами, не равными нулю.
Задание 9
Выдать статистику по категориям обучения и учебным заведениям вашего государства. Отчет должен начинаться с заголовка и цифры - общего количества записей по запросу. Далее совокупность таблиц, где каждая таблица начинается с заголовка: <категория обучения> - <цифра>, не равная нулю, а заканчивается перечнем учебных заведений с цифрами, не равными нулю.
Задание 10
Выдать статистику по выпуску 1993 года вашего государства по всем учебным заведениям и специальностям. Отчет должен начинаться с заголовка и цифры - общего количества записей по запросу (выпуску 1993 г.). Далее перечень таблиц, где каждая таблица начинается с заголовка: <название учебного заведения> - <цифра>, не равная нулю, а заканчивается перечнем шифров специальностей с цифрами, не равными нулю.
Задание 11
Выдать статистику по приему 1991 года вашего государства по всем категориям обучения и городам. Отчет должен начинаться с заголовка и цифры - общего количества записей по запросу (по приему 91-го года). Далее совокупность таблиц, где каждая таблица начинается с заголовка: <название категории обучения> - <цифра>, не равная нулю, а заканчивается перечнем названий городов с цифрами, не равными нулю.
Задание 12
Выдать статистику по специальностям и городам вашего государства. Отчет должен начинаться заголовком и цифрой - общим количеством записей по запросу. Далее совокупность таблиц, где каждая таблица начинается с заголовка: СПЕЦИАЛЬНОСТЬ <шифр> - ВСЕГО <цифра>, не равная нулю, а заканчивается перечнем названий городов с цифрами, не равными нулю.
Задание 13
Выдать статистику по городам и годам окончания вашего государства. Отчет должен начинаться с заголовка и цифры - общего количества записей по запросу. Далее совокупность таблиц, где каждая таблица начинается с заголовка: ГОРОД <название> - ВСЕГО <цифра>, не равная нулю, а заканчивается перечнем годов окончания с цифрами, не равными нулю.
Задание 14
Выдать статистику по лицам мужского пола вашего государства по всем городам и учебным заведениям. Отчет должен начинаться соответствующим заголовком. Далее должна следовать совокупность таблиц, каждая из которых включает перечень учебных заведений одного города с цифрами, не равными нулю (последняя строка таблицы представляет собой: ГОРОД <название> - ВСЕГО <цифра>, где <цифра> ^= 0). Заканчивается отчет цифрой - общим количеством записей по запросу (т. е. всего мужчин).
Задание 15
Выдать статистику по специальностям и учебным заведениям вашего государства. Отчет должен начинаться с заголовка и цифры - общего количества записей по запросу. Далее совокупность таблиц, где каждая таблица начинается с заголовка: СПЕЦИАЛЬНОСТЬ <шифр> - ВСЕГО <цифра>, не равная нулю, а заканчивается перечнем названий учебных заведений с цифрами, не равными нулю.
ПРИЛОЖЕНИЕ VI
ОПИСАНИЕ ПРЕДМЕТНОЙ ОБЛАСТИ "УЧАЩИЙСЯ"
Предметная область включает в себя шесть объектов:
1) Информационный объект "Учащиеся России";
2) вспомогательный объект "вузы-города-страны СНГ";
3) объект "коды и значения учебных заведений";
4) объект "коды и значения семейного положения";
5) объект "коды и значения категории обучения";
6) объект "коды и значения городов".
В БД каждому объекту предметной области соответствует своя таблица.
Структура информационной таблицы "Россия" включает 12 полей:
Номер - цифровое поле (целое число из 6 цифр);
Фамилия Имя Отчество - символьное поле (40 символов);
Дата рождения - символьное поле (6 символов);
Пол - символьное поле (1 символ);
Семейное положение (код) - символьное поле (1 символ);
Специальность - символьное поле (6 символов);
Категория обучения (код) - символьное поле (2 символа);
Учебное заведение (код) - цифровое поле (целое число из 7 цифр);
Месяц приема - символьное поле (2 символа);
Год приема - символьное поле (2 символа);
Месяц окончания - символьное поле (2 символа);
Год окончания - символьное поле (2 символа).
Структура вспомогательной таблицы ВУЗы включает в себя 6 полей:
Учебное заведение (код) - цифровое поле (целое число из 7 цифр);
Учебное заведение (значение) - символьное поле (25 символов);
Город (код) - символьное поле (3 символа);
Город (значение) - символьное поле (20 символов);
Страна (код) - символьное поле (2 символа);
Страна (значение) - символьное поле (15 символов).
Структура оставшихся 4-х таблиц (таблиц словаря БД) одинакова и состоит из двух полей: код и раскодированное значение.
Структура таблицы "Коды и значения учебных заведений":
Код - цифровое поле (целое число из 7 цифр);
Значение - символьное поле (25 символов).
Структура таблицы "Коды и значения семейного положения":
Код - символьное поле (1 символ);
Значение - символьное поле (12 символов).
Структура таблицы "Коды и значения категории обучения":
Код - символьное поле (2 символа);
Значене - символьное поле (16 символов).
Структура таблицы "Коды и значения городов":
Код - символьное поле (3 символа);
Значение - символьное поле (20 символов).
ПРИЛОЖЕНИЕ VII
СХЕМА БД "УЧАЩИЙСЯ"
У Ч А Щ И Й С Я
РОССИЯ Коды и значения
Вузы-Города учебных
УКРАИНА заведений
БЕЛОРУССИЯ Вспомогательная
таблица Коды и
значения
МОЛДАВИЯ семейного