Содержание. 1. Нормализация исходного отношения 2. Разработка
программ создания таблиц; формы для ввода данных в таблицу . 3.
Создание отчётов .
1.Нормализация исходного отношения . Чтобы нормализовать данное
исходное отношение необходимо привести его сначала к первой , потом
ко второй , а затем и к третьей нормальной форме . Отношения
находятся в 1-ой нормальной форме тогда и только тогда, когда все
входящие в него домены содержат только атомарные значения Основные
действия для приведения к первой нормальной форме: - удаляем
повторяющиеся группы в отдельных таблицах; - создаём отдельные
таблицы для каждого множества отношений; - определяем первичный
ключ в каждом отношении . В результате этих действий получаем две
таблицы. В первую вошли поля , которые связаны с первичным ключом
отношением “ 1 - 1 ” : № сотрудника , Фамилия , Имя , Отчество ,
пол, Адрес, дата рождения № сотрудника Фамилия Имя Отчество Пол
Адрес Дата рождения Первичным ключом в этой новой таблице является
№ сотрудника. Во вторую вошли поля, которые связаны с первичным
ключом отношением “ 1 - ¥ ” : № сотрудника, №задания, содержание
задания, № документа , Содержание документа, Дата получения
документа , Дата получения задания, срок выполнения задания, дата
окончания выполнения задания №сотрудника №задания Содержание
задания №документа Содержание документа Дата получения документа
Дата получения задания Срок выполнения задания Дата окончания
выполнения задания Первичным ключом в этой таблице являются
составной ключ, содержащий поля “№ сотрудника, № задания. Отношение
R находится во 2-ой нормальной форме , если оно находится в 1-ой
нормальной форме , и каждый неключевой атрибут функционально полно
зависит от первичного ключа . Основные действия: - удаление
частичной зависимости . Для приведения ко второй нормальной форме
необходимо удалить частичную зависимость . Во второй таблице
существует частичная зависимость поля “№ документа ” от составного
ключа “№ сотрудника”-“№ задания” . Это поле полностью зависит от
поля ”-“№ задания” и совсем не зависит от поля “№ сотрудника” . Для
удаления этой зависимости разделяем таблицу на две . Первая: №
сотрудника , № задания № сотрудника №задания Первичным ключом в
этой таблице является составной ключ , включающий в себя поля “№
сотрудника“ и № заданния. Вторая: № задания , содержание задания,
дата получения задания , срок выполнения задания, дата окончания
выполнения задания, номер документа, содержание документа, дата
получения документа № задания Дата получения задания Содержание
задания Срок выполнения задания Дата окончания выполнения задания
Номер документа Содержание документа дата получения документа
Первичным ключом в этой таблице является поле “№ задания” .
Отношение находится в 3-ей нормальной форме , если оно находится во
2-ой нормальной форме и каждый неключевой атрибут нетранзитивно
зависит от первичного ключа . Во второй таблице существует
транзитивная зависимость: - поля “Содержание документа” и “Дата
получения документа” зависят от первичного ключа “№ задания” через
поле “№ документа”; Для удаления этой зависимости выделяем эти поля
в отдельную таблицу . Получаем две таблицы: № задания Содержание
задания Дата получения задания Срок выполнения Дата окончания
выполнения № документа Первичным ключом является поле “№ задания” №
документа Содержание документа Дата получения документа Первичным
ключом является поле “№ документа” В результате этого получаем
четыре таблицы . Первая: № сотрудника Фамилия Имя Отчество Пол
Адрес Дата рождения Первичным ключом в этой таблице является поле
“№ сотрудника” Вторая: № сотрудника №задания Первичным ключом в
этой таблице является составной ключ , включающий в себя поля “№
сотрудника” и “№ задания” . Третья: № задания Содержание задания
Дата получения задания Срок выполнения Дата окончания выполнения №
документа Первичным ключом в этой таблице является поле “№
задания”. Четвёртая: № документа Содержание документа Дата
получения документа Первичным ключом в этой таблице является поле
“№ документа” . 2. Разработка программ создания таблиц, формы для
ввода данныхв таблицы. Создание таблицы “документы” CREATE TABLE
Докумены ( Номер_Документа INTEGER CONSTRAINT Индекс5 PRIMARY KEY ,
Содержание_Документа TEXT , Дата_Полу4ения date);
Создание таблицы “задание” create table Задание ( Номер_Задания
INTEGER CONSTRAINT a1 PRIMARY KEY, содержание_задания text,
Дата_Полу4ения date, срок_выполнения integer
,Дата_Окон4ания_Выполнения date , Номер_Документа integer);
Создание таблицы “сотрудник” CREATE TABLE Сотрудник (
Номер_сотрудника COUNTER CONSTRAINT Индекс1 PRIMARY KEY , Фамилия
TEXT ,Имя TEXT, От4ество TEXT,Пол TEXT, Дата_Рождения date, Адрес
TEXT); Создание таблицы create table Сотрудник_Задание (
Номер_Сотрудника INTEGER CONSTRAINT Индек2 PRIMARY KEY ,
Номер_Задания integer); 3. Создание отчета для печати Задание:
Вывести успешные и неуспешные задания. Запрос состоит из двух
зарпросов: 1. SELECT Задание.Номер_Задания,
Задание.содержание_задания,
Дата_Окон4ания_Выполнения-Дата_полу4ения AS разность,
Дата_Окон4ания_Выполнения, Задание.срок_выполнения FROM Задание; 2.
SELECT Задание.Номер_Задания, Задание.содержание_задания,
(Дата_Окон4ания_Выполнения) FROM все WHERE срок_выполнения >
разность; Выводит успешно выполненные задания 1. SELECT
Задание.Номер_Задания, Задание.содержание_задания,
Дата_Окон4ания_Выполнения-Дата_полу4ения AS разность,
Дата_Окон4ания_Выполнения, Задание.срок_выполнения FROM Задание; 2.
SELECT Задание.Номер_Задания, Задание.содержание_задания,
(Дата_Окон4ания_Выполнения) FROM все WHERE срок_выполнения >
разность; Выводит неуспешно выполненные задания
Программирование баз данных
127
0
3 минуты
Понравилась работу? Лайкни ее и оставь свой комментарий!
Для автора это очень важно, это стимулирует его на новое творчество!