
- •Введение
- •Лабораторное занятие №1 Тема: ручное проектирование структуры базы данных
- •Лабораторное занятие №2 тема: моделирование данных средствами case - средства
- •Лабораторное занятие № 3 Тема: Создание псевдонима базы данных. Создание таблиц базы данных
- •Лабораторное занятие№ 4 Тема: Операции с таблицами
- •Лабораторное занятие№ 5 Тема: Создание и модификация индексов
- •Лабораторное занятие№ 6 Тема: Создание файла проекта и модуля данных. Подключение к бд
- •Лабораторное занятие№ 7 Тема: проектирование приложения для работы с базой данных. Создание меню
- •Лабораторное занятие№ 8 Тема: отображение данных в delphi – приложении. Навигация в базе данных
- •Лабораторное занятие№ 9 Тема: организация доступа к полям. Работа с записями
- •Лабораторное занятие№ 10 Тема: организация поиска записей в базе данных
- •Лабораторное занятие№ 11 Тема: фильтрация записей в базе данных
- •Лабораторное занятие№ 12 Тема: организация условий ссылочной целостности
- •Лабораторное занятие№ 13 Тема: delphi: создание статических запросов
- •Лабораторное занятие№ 14 Тема: delphi: создание динамических запросов
- •Лабораторное занятие№ 15 Тема: формирование отчетов
- •Заключение
- •Список использованной литературы
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ федеральное государственное АВТОНОМНОЕ образовательное учреждение высшего профессионального образования «Национальный исследовательский ядерный университет «МИФИ» |
Красноярский электромеханический техникум– филиал федерального государственного автономного образовательного учреждения высшего профессионального образования «Национальный исследовательский ядерный университет «МИФИ» (КЭМТ НИЯУ МИФИ) |
Специальность: 230115 «Программирование в компьютерных системах»
Профессиональный модуль: |
ПМ.02 Разработка и администрирование баз данных |
Междисциплинарный курс: |
МДК.02.02. Технология разработки и защиты баз данных |
ОТЧЕТ
ПО ЛАБОРАТОРНОМУ ПРАКТИКУМУ
Выполнил студент гр. 3 ПО
Талалуева Н.А_____________
(подпись)
«____»_______________2015г.
Принял преподаватель
Тихонова Л.Н ____________
(подпись)
«____»_______________2015г.
Зеленогорск
2015
СОДЕРЖАНИЕ
Введение 5
Лабораторное занятие №1 Тема: ручное проектирование структуры базы данных 7
ЛАБОРАТОРНОЕ ЗАНЯТИЕ №2 24
ТЕМА: моделирование данных средствами case - средства 24
ЛАБОРАТОРНОЕ ЗАНЯТИЕ № 3 29
Тема: Создание псевдонима базы данных. Создание таблиц базы данных 29
ЛАБОРАТОРНОЕ ЗАНЯТИЕ№ 4 42
Тема: Операции с таблицами 42
ЛАБОРАТОРНОЕ ЗАНЯТИЕ№ 5 47
Тема: Создание и модификация индексов 47
ЛАБОРАТОРНОЕ ЗАНЯТИЕ№ 6 53
Тема: Создание файла проекта и модуля данных. подключение к бд 53
ЛАБОРАТОРНОЕ ЗАНЯТИЕ№ 7 56
Тема: проектирование приложения для работы с базой данных. создание меню 56
ЛАБОРАТОРНОЕ ЗАНЯТИЕ№ 8 59
Тема: отображение данных в delphi – приложении. навигация в базе данных 59
ЛАБОРАТОРНОЕ ЗАНЯТИЕ№ 9 66
Тема: организация доступа к полям. работа с записями 66
ЛАБОРАТОРНОЕ ЗАНЯТИЕ№ 10 69
Тема: организация поиска записей в базе данных 69
ЛАБОРАТОРНОЕ ЗАНЯТИЕ№ 11 72
Тема: фильтрация записей в базе данных 72
ЛАБОРАТОРНОЕ ЗАНЯТИЕ№ 12 76
Тема: организация условий ссылочной целостности 76
ЛАБОРАТОРНОЕ ЗАНЯТИЕ№ 13 79
Тема: delphi: создание статических запросов 79
ЛАБОРАТОРНОЕ ЗАНЯТИЕ№ 14 83
Тема: delphi: создание динамических запросов 83
ЛАБОРАТОРНОЕ ЗАНЯТИЕ№ 15 88
Тема: формирование отчетов 88
ЗАКЛЮЧЕНИЕ 93
СПИСОК ИСПОЛЬЗОВАННОЙ ЛИТЕРАТУРЫ 95
Введение
Рабочая программа профессионального модуля (ПМ.02) «Разработка и администрирование баз данных» является частью основной профессиональной образовательной программы в соответствии с ФГОС СПО по специальности «Программирование в компьютерных системах». Профессиональный модуль направлен на формирование профессиональных компетенций:
Разрабатывать объекты базы данных
Реализовывать базу данных в конкретной системе управления базами данных (СУБД)
Решать вопросы администрирования базы данных
Реализовывать методы и технологии защиты информации в базах данных
Данный документ является отчетом по лабораторному практикуму междисциплинарного курса МДК.02.02. « Технология разработки и защиты баз данных » и содержит отчеты к 15 лабораторным работам по темам:
- Ручное проектирование структуры базы данных;
- Моделирование данных средствами case–средства;
- Создание псевдонима базы данных. Создание базы данных;
- Операции с таблицами;
- Создание и модификация индексов;
- Создание файла проекта и модуля данных. Подключение к БД;
- Проектирования приложения для работы с базой данных. Создание меню;
- Отображение данных в Delphi – приложении. Навигация в БД;
- Организация доступа к полям. Работа с записями;
- Организация поиска записей в базе данных;
- Фильтрация записей в базе данных;
- Организация условий ссылочной целостности;
- Delphi: создание статических запросов;
- Delphi: создание динамических запросов;
- Формирование отчетов.
Лабораторное занятие №1 Тема: ручное проектирование структуры базы данных
Цель: приобретение навыков проектирования структуры базы данных.
ТО и ПО: ПК AMD E1-1500 APU withRadeon(tm) HD Graphics 1.48 GHz, 2.00 ГБ, ОС Windows 8.1, методические указания.
Задача: В результате исследования предметной области собраны концептуальные требования, которые представлены в таблице 1.Требуется спроектировать базу данных “Учет успеваемости учеников музыкальной школы”, нормализовав концептуальные требования, представленные в таблице 1.1.
Описание выполнения работы:
Имеются концептуальные требования, представленные в таблице 1.1.
Согласно требованиям 1НФ проанализировала структуру таблицы 1 и выделила делимые поля в таблице. Это будут, поля: «ФИО ученика», «ФИО родителей ученика». Разобьем эти поля, соответственно, на поля:
Фамилия ученика,
Имя ученика
Отчество ученика,
Фамилия родителя,
Имя родителя
Отчество родителя.
Поле «Место работы и должность родителя» разбивать не стала в силу того, что поиск отдельно по этому атрибуту осуществляться не будет.
Т
аблица
1.1
ФИО ученика |
Дата рождения ученика |
Адрес ученика |
Дата поступления в школу |
Музыкальный инструмент |
Класс инструмента |
ФИО родителей ученика |
Место работы, должность родителей |
Контактные телефоны родителей |
Предмет |
Дата получения оценки |
Оценка |
Четверть |
Оценка за четверть |
Год обучения |
Годовая оценка |
Смирнов Олег Иванович |
22.03.2000 |
Мира 23-33 |
01.09. 2006 |
скрипка |
смычковые |
Смирнов Иван Иванович Смирнова Ольга Алексеевна |
ЕСЦ Инженер ТБ Отдел культуры бухгалтер |
89133456678
89236734586 |
специальность |
10.09.2006 |
5 |
1 |
5 |
1 |
5 |
Смирнов Олег Иванович |
22.03.2000 |
Мира 23-33 |
01.09. 2006 |
скрипка |
смычковые |
Смирнов Иван Иванович Смирнова Ольга Алексеевна |
ЕСЦ Инженер ТБ Отдел культуры бухгалтер |
89133456678
89236734586 |
сольфеджио |
12.09.2006 |
4 |
1 |
4 |
1 |
4 |
Смирнов Олег Иванович |
22.03.2000 |
Мира 23-33 |
01.09. 2006 |
скрипка |
смычковые |
Смирнов Иван Иванович Смирнова Ольга Алексеевна |
ЕСЦ Инженер ТБ Отдел культуры бухгалтер |
89133456678
89236734586 |
хор |
18.09.2006 |
5 |
1 |
5 |
1 |
5 |
Смирнов Олег Иванович |
22.03.2000 |
Мира 23-33 |
01.09. 2006 |
скрипка |
смычковые |
Смирнов Иван Иванович Смирнова Ольга Алексеевна |
ЕСЦ Инженер ТБ Отдел культуры бухгалтер |
89133456678
89236734586 |
специальность |
10.09.2006 |
5 |
1 |
5 |
1 |
5 |
Пак Ирина Ивановна |
10.09.2007 |
Парковая 17-89 |
01.09. 2014 |
фортепиано |
клавишные |
Пак Ольга Петровна |
Не работает |
89135646835 |
специальность |
11.09.2014 |
4 |
|
|
|
|
Пак Ирина Ивановна |
10.09.2007 |
Парковая 17-89 |
01.09. 2014 |
фортепиано |
клавишные |
Пак Ольга Петровна |
Не работает |
89135646835 |
сольфеджио |
13.09.2014 |
5 |
|
|
|
|
Пак Ирина Ивановна |
10.09.2007 |
Парковая 17-89 |
01.09. 2014 |
фортепиано |
клавишные |
Пак Ольга Петровна |
Не работает |
89135646835 |
музыкальная литература |
22.09.2014 |
5 |
|
|
|
|
Пак Ирина Ивановна |
10.09.2007 |
Парковая 17-89 |
01.09. 2014 |
фортепиано |
клавишные |
Пак Ольга Петровна |
Не работает |
89135646835 |
хор |
12.10.2014 |
5 |
|
|
|
|
Изм.
Лист
№ докум.
Подпись
Дата
Лист
ОФ 230115 ЛП 21О
Основным назначением таблицы является учет успеваемости, однако в ходе анализа структуры на предмет наличия повторяющихся групп полей выяснено, что для каждой записи дублируются группы полей:
ФИО ученика
Дата рождения ученика
Адрес ученика
Дата поступления в школу
ФИО родителей ученика
Место работы, должность родителей
Контактные телефоны родителей
Музыкальный инструмент
Класс инструмента
Вынесла эти атрибуты в отдельную таблицу и назвала ее «Ученик». Заметила что при наличии у ученика более одного родителя происходит дублирование атрибутов родителей, следовательно, атрибуты родителей также вынесла в отдельную таблицу и назвала таблицу «Родитель» . Атрибуты «Музыкальный инструмент» и «Класс инструмента» повторяются и не характеризуют ученика, значит, вынесла эти поля в отдельную таблицу «Инструмент».
Таким образом, получила таблицы:
Таблица 1.2- Ученик;
Таблица 1.3 – Родитель;
Таблица 1.4 – Инструмент.
Таблица 1.2:
-
Фамилия ученика
Имя ученика
Отчество ученика
Дата рождения ученика
Адрес ученика
Дата поступления в школу
Таблица 1.3
-
Фамилия родителя
Имя родителя
Отчество родителя
Место работы, должность родителя
Контактный телефон
Таблица 1.4
-
Музыкальный инструмент
Класс инструмента
Проанализировала структуру оставшихся атрибутов сущности по учету успеваемости, приведенных в таблице 1.5.
Таблица 1.5
Предмет |
Дата получения оценки |
Оценка |
Четверть |
Оценка за четверть |
Год обучения |
Годовая оценка |
специальность |
10.09.2006 |
5 |
1 |
5 |
1 |
5 |
сольфеджио |
12.09.2006 |
4 |
1 |
4 |
1 |
4 |
хор |
18.09.2006 |
5 |
1 |
5 |
1 |
5 |
специальность |
10.09.2006 |
5 |
1 |
5 |
1 |
5 |
специальность |
11.09.2014 |
4 |
|
|
|
|
сольфеджио |
13.09.2014 |
5 |
|
|
|
|
музыкальная литература |
22.09.2014 |
5 |
|
|
|
|
хор |
12.10.2014 |
5 |
|
|
|
|
Заметила, что для ученика Смирнова Олега происходит дублирование информации об успеваемости за четверть и за год. Что же касается аналогичной информации для ученицы Пак Ирины, то, так как она поступила в школу 1 сентября 2014 года, то естественно, успеваемости за четверть и за год она пока не имеет. Получила пустые значения атрибутов, что недопустимо для 1НФ. Таким образом, атрибуты, характеризующие успеваемость за четверть и за год, вынесла в отдельные таблицы 1.6 -1.8.
Таблица 1.6
-
Предмет
Оценка
Дата получения оценки
Таблица 1.7
-
Предмет
Четверть
Оценка за четверть
Таблица 1.8
-
Предмет
Год обучения
Оценка за год
Согласно требованиям 2НФ проанализировала структуры таблиц и выявила противоречия требованиям 2 НФ. В ходе анализа выяснила, что в сущностях не определены ключевые поля. Определила их. Для таблицы Ученик ввела ключевое поле – Код ученика., структура ее представлена в таблице 1.9.
Таблица 1.9
-
Код ученика
Фамилия ученика
Имя ученика
Отчество ученика
Дата рождения ученика
Адрес ученика
Дата поступления в школу
Для таблицы Родитель ввела ключевое поле – Код родителя.
Таблица 1.10
-
Код родителя
Фамилия родителя
Имя родителя
Отчество родителя
Место работы, должность родителя
Контактный телефон
Для таблицы Инструмент ввела ключевое поле – Код инструмента.
Таблица 1.11
-
Код инструмента
Музыкальный инструмент
Класс инструмента
Для таблицы «Текущая успеваемость» ввела ключевое поле –Код текущей успеваемости
Таблица 1.12
-
Код текущей успеваемости
Предмет
Оценка
Дата получения оценки
Для таблицы «Промежуточная успеваемость» ввела ключевое поле – Код промежуточной успеваемости.
Таблица 1.13
-
Код промежуточной успеваемости
Предмет
Четверть
Оценка за четверть
Для таблицы «Годовая успеваемость» ввела ключевое поле – Код годовой успеваемости.
Таблица 1.14
-
Код годовой успеваемости
Предмет
Год обучения
Оценка за год
Согласно требованиям 3НФ проанализировала структуры таблиц и выявила противоречия требованиям 3НФ. В ходе анализа таблицы «Ученик» выяснила, что в ней атрибут «Дата поступления в школу» не характеризует ученика, а характеризует процесс его поступления в музыкальную школу. Таким образом, вынесла этот атрибут в отдельную таблицу «Поступление в школу», добавила ключевое поле Код поступления и атрибуты «Код ученика» и «Код инструмента» для того, чтобы учесть, кто именно из учеников и на какой инструмент поступил обучаться.
Результат декомпозиции получился следующим:
Таблица 1.15
-
Код ученика
Фамилия ученика
Имя ученика
Отчество ученика
Дата рождения ученика
Адрес ученика
Дата поступления в школу
Таблица 1.16
-
Код поступления
Код ученика
Код инструмента
Дата поступления в школу
Таблица «Родитель» не противоречит условиям 3 НФ, но она не отражает принадлежность родителей к конкретному ученику, поэтому ввела поле Код ученика.
Таблица 1.17
-
Код родителя
Код ученика
Фамилия родителя
Код ученика
Имя родителя
Отчество родителя
Место работы, должность родителя
Контактный телефон
Анализ таблицы Текущая успеваемость показывает, что атрибут Предмет не зависит от ключевого поля Код текущей успеваемости, поэтому вынесла этот атрибут в отдельную сущность Предмет, добавила в нее ключевое поле Код предмета, а в сущность Текущая успеваемость добавила атрибуты Код предмета и Код ученика для того, чтобы учесть кто из учеников, по какому предмету получил оценку.
Результат декомпозиции представлен в таблицах 1.18-1.19.
Таблица 1.18
-
Код текущей успеваемости
Код предмета
Код ученика
Предмет
Оценка
Дата получения оценки
Таблица 1.19
-
Код предмета
Наименование предмета
Анализ таблицы Промежуточная успеваемость показывает, что атрибут Предмет не зависит от ключевого поля Код промежуточной успеваемости, поэтому вынесла этот атрибут в отдельную сущность, предмета, а в сущность Промежуточная успеваемость добавила атрибуты Код предмета и Код ученика для того, чтобы учесть кто из учеников, по какому предмету получил оценку и добавим атрибуты Год обучения, для того чтобы отслеживать в какой год и какую оценку ученик получил.
Аналогично выполняется декомпозиция для таблицы Годовая успеваемость. Результаты декомпозиций представлены в таблицах 1.20 и 1.21
Таблица 1.20
-
Код промежуточной успеваемости
Код предмета
Код ученика
Год обучения
Оценка
Таблица 1.21
-
Код годовой успеваемости
Код предмета
Код ученика
Год обучения
Оценка
Вывод: в ходе лабораторной работы приобрела навыки проектирования структуры базы данных.