- •Введение
- •Лабораторная работа №1 Создание и модификация базы данных.
- •Варианты работы
- •Лабораторная работа №2 Работа с базами данных. Индексация, фильтрация и поиск данных в базе
- •Лабораторная работа №3 Создание формы для редактирования таблиц
- •Лабораторная работа 4 Создание программного файла Visual FoxPro.
- •Порядок выполнения
- •Лабораторная работа 5 Создание связанных таблиц в субд oracle с декларативными ограничениями данных.
- •Варианты работы
- •Лабораторная работа №6 Создание сложных запросов с использованием подзапросов и агрегированных функций
- •Варианты работы
- •Лабораторная работа 7 Создание анонимного блока
- •Варианты работы
- •Лабораторная работа 8 Создание хранимой процедуры или триггера баз данных
- •Варианты работы
Порядок выполнения
1. Изучить действие команд навигации по базе данных GO, SCAN, CALCULATE, SET DEVICE и функций ROW(), PROW(), COL(), PCOL().
2. Используя таблицу, созданную в лабораторной работе № 1 создать программный файл, выполняющий последовательно следующие функции (с задержкой времени выполнения между функциями):
а) вывод на экран и в текстовый файл в табличном виде данных таблицы;
б) вывод на экран данных строк начала, конца и середины таблицы;
в) вывод на экран минимального, максимального и среднего значений какого-либо числового поля.
3. Выполнить созданный программный файл и проверить правильность работы программы.
4. Составить отчет, в котором привести созданную программу и ответы на контрольные вопросы.
Контрольные вопросы
Каким образом запустить программный файл на выполнение?
Какие значение можно выполнить с помощью команды CALCULATE?
Куда можно перенаправить вывод данных при помощи команды SET DEVICE?
Какими командами осуществляется навигация по таблице?
Лабораторная работа 5 Создание связанных таблиц в субд oracle с декларативными ограничениями данных.
Целью работы является формирование навыков создания таблиц с помощью стандартного языка запросов SQL работы с реляционными базами данных. В зависимости от варианта студент должен написать команды создания двух связанных таблиц с поддержкой целостности данных и ссылочной целостности, определением первичного ключа и не менее двух ограничений целостности CHECK.
Порядок выполнения
1. Сохранить идентификатор и пароль в текстовом файле.
2. По заданным вариантам определить структуру таблицы (задать имена и типы столбцов), определить домены в таблице, задать ограничения на столбцы.
3. Выделить первичные ключи в обеих таблицах.
4. Выделить внешний ключ в дочерней таблице. Допустимость пустых значений внешнего ключа выбрать, исходя из смысла связи таблиц.
5. Написать команды создания связанных таблиц, в дочерней таблицы должна поддерживаться ссылочная целостность NO ACTION.
6. Выполнить команды создания в средах SQL Plus или SQL Worksheet.
7. Вставить в первую таблицу не менее 4 строки, во вторую таблицу не менее 8 строки, причем некоторые строки первой таблицы не должны иметь порожденных строк.
7. Выполнить 4 разные команды модификации данных, нарушающие целостность ссылок, определить в каждом случае номер ошибки.
8. Составить отчет, в котором должна быть представлена структура таблиц, домены таблиц, первичные ключи, команды модификации данных, нарушающие целостность ссылок, номера ошибкок и ответы на контрольные вопросы.
Варианты работы
Вариант 1
Создать две связанные таблицы: родительская - пассажир, дочерняя – билет.
В таблице пассажир должны содержаться данные:
номер паспорта (10-ти разрядное число);
ФИО пассажира;
адрес;
телефон (6-ти или 7-ми разрядное число), пол ("муж" или "жен").
В таблице билет должны содержаться данные:
номер билета;
рейс (от 10 до 400, исключая 200 и 300);
длительность полета (от 30 до 400);
тип самолета;
время вылета;
дата вылета (пассажир не может купить два билета на один и тот же рейс, время и дату вылета).
Вариант 2
Создать две связанные таблицы: родительская - пациент, дочерняя – процедура.
В таблице пациент должны содержаться данные:
паспорт (десятиразрядное число);
ФИО пациента;
номер полиса;
пол (допустимые значения "муж", "жен");
телефон (должен начинаться с 2, 4, 5, 6, 7, 8),
в таблице процедура должны содержаться данные:
вид процедуры;
продолжительность (не менее 5, не более 20 мин.);
номер кабинета (допустимые значения 10, 11, 14, 15, 17, 18, 20, 22, 24, 25);
степень процедуры (от 1 до 5);
с применением дополнительных средств или нет.
Вариант 3
Создать две связанные таблицы: родительская - абонент, дочерняя - экземпляр книги.
В таблице абонент должны содержаться данные:
номер читательского билета (от 100 до 1500);
ФИО абонента;
телефон (6-ти разрядное число);
адрес абонента;
телефон;
паспорт.
В таблице экземпляр книги должны содержаться данные:
номер (от 1000);
название книги;
номер полки (от 10 до 100, исключая 55, 56, 88);
общее количество экземпляров (не больше 10);
вес экземпляра (от 100 до 1500).
Вариант 4
Создать две связанные таблицы: родительская - корпус, дочерняя- микросхема.
В таблице корпус должны содержаться данные:
материал корпуса (металл, пластмасса, керамика);
номер корпуса (10-ти разрядное число);
количество выводов (от 3 до 64);
температура допустимая (не больше 120);
вид (планар, DIP, FREE).
В таблице микросхема должны содержаться данные:
обозначение;
тип микросхемы;
вид (аналоговая, цифровая);
назначение (общее, специальное, военное);
тип исполнения (ТТЛ, ТТЛШ, КМОП).
Вариант 5
Создать две связанные таблицы: родительская - исполнитель, дочерняя – альбом.
В таблице исполнитель должны содержаться данные:
название исполнителя;
код исполнителя;
основной жанр исполнителя (ПОП, РОК, ДИСКО, РЭП, МЕТАЛ, ПАНК);
количество (если группа);
год с момента начала работы исполнителя.
В таблице альбом должны содержаться данные:
название альбома;
длительность;
жанр (перечень см. в табл. исполнитель);
количество композиций;
дата выпуска.
Вариант 6
Создать две связанные таблицы: родительская - автор, дочерняя – книга.
В таблице автор должны содержаться данные:
Номер автора;
ФИО автора;
Адрес;
дата рождения (не раньше 01.01.1925);
жанр (детектив, фантастика, эссе, драма, мелодрама, сатира);
статус (мэтр, начинающий, средний).
В таблице книга должны содержаться данные:
название;
жанр (см. выше);
кол. страниц;
номер издания (не больше 10);
издательство.
Вариант 7
Создать две связанные таблицы: родительская - клиент, дочерняя – заказ.
В таблице клиент должны содержаться данные:
паспорт (10-ти разрядное число, не начинающееся с 0);
адрес клиента;
телефон (6-ти разрядное число);
тип клиента (постоянный, периодический, одноразовый);
пол ("м", "ж").
В таблице заказ должны содержаться данные:
вид товара;
количество товара в заказе;
сумма заказа;
дата заказа;
дата доставки.
(клиент не может заказать два заказа в один день).
Вариант 8
Создать две связанные таблицы: родительская - работник, дочерняя - выполненная работа.
В таблице работник должны содержаться данные:
учетный номер работника;
паспорт (10-ти разрядное число);
пол ("мужской", "женский");
адрес;
возраст (не меньше 18 и не старше 65).
В таблице выполненная работа должны содержаться данные:
вид работы;
количество часов (от 1 до 12);
степень тяжести (легкая, средняя, тяжелая);
дата выполнения;
степень выполнения в %.
Вариант 9
Создать две связанные таблицы: родительская - студент, дочерняя: дисциплина.
В таблице студент должны содержаться данные:
номер зачетной книжки;
паспорт;
ФИО студента;
номер группы студента;
номер специальности (5-ти или 6-ти разрядное число).
В одной группе не должно быть однофамильцев.
В таблице дисциплина должны содержаться данные:
название дисциплины;
количество часов;
ФИО преподавателя;
направление (гуманитарное, техническое, естественное);
степень дисциплины (от 1 до 10).
Вариант 10
Создать две связанные таблицы: родительская - аптека, дочерняя – лекарство.
В таблице аптека должны содержаться данные:
номер аптеки;
адрес аптеки;
направление (общее, гомеопатическое, народно-медицинское);
количество работников (не меньше 5);
номер лицензии.
В таблице лекарство должны содержаться данные:
название;
страна выпуска;
вид (таблетки, капли, аэрозоль, мази, гели, кремы, ампулы, порошки, отвары);
цена (в разных аптеках может быть разная цена);
назначение (сердечные, желудочные, легочные, отхаркивающие, кожные).
Дополнительное ограничение: не могут повторяться название, страна выпуска и вид.
Вариант 11
Создать две связанные таблицы: родительская - фирма, дочерняя – предоставляемые услуги.
В таблице фирма должны содержаться данные:
название фирмы;
ФИО директора;
адрес фирмы;
количество работающих сотрудников больше (5);
специализация.
В таблице предоставляемые услуги должны содержаться данные:
название услуги;
стоимость услуги;
продолжительность услуги (больше 0);
количество сотрудников, обеспечивающих услугу;
вид оборудования, используемое при услуге.
Вариант 12
Создать две связанные таблицы: родительская - общежитие, дочерняя – студент.
В таблице общежитие должны содержаться данные:
номер общежития;
ФИО коменданта;
адрес;
наличие столовой;
количество компьютеров;
факультет (ФЭТ, РТФ, РКФ, ФСУ).
В таблице студент должны содержаться данные:
номер паспорта студента;
номер группы;
ФИО студента;
дата рождения;
стоимость платы за проживание (больше 300).
Контрольные вопросы
В чем заключается ссылочная целостность?
Привести типы ограничений при создании таблицы ORACLE?
Привести типы ссылочной целостности.
Какие ограничения определяются в ограничении таблицы?
Сколько первичных ключей можно определить для таблицы?
Имеет ли порядок создания родительской и дочерней таблиц?
В каком случае внешний ключ может допускать пустые значения?