- •Базы данных. Классификация и структурная организация
- •Виды структур данных
- •Сетевую структуру данных можно представить в виде схемы.
- •Реляционные базы данных
- •Тип данных
- •Кортеж, отношение
- •1. Принципы нормализации:
- •2. Виды логической связи.
- •Состав субд
- •Основные функции субд.
- •Другие функции субд
- •Основные понятия базы данных Microsoft Access
- •Структура простейшей базы данных
- •Свойства полей базы данных
- •Типы данных
- •Работа с субд Microsoft Access 2003
- •Работа с таблицами
- •Работа с запросами
- •Работа с формами
- •Работа со страницами доступа к данным
- •Работа с отчетами
Тип данных
Понятие тип данных в реляционной модели данных полностью адекватно понятию типа данных в языках программирования. В современных реляционных БД допускается хранение символьных, числовых данных, специализированных числовых данных (таких как "деньги"), а также специальных данных (дата, время, временной интервал). В нашем примере мы имеем дело с данными трех типов: строки символов, целые числа и "деньги".
Домен
Домен - допустимые потенциальные множества значений данного типа. Например, домен "Имена" в нашем примере определен на базовом типе строк символов, но в число его значений могут входить только те строки, которые могут изображать имя (в частности, такие строки не могут начинаться с мягкого знака).
Семантическое понятие домена: данные считаются сравнимыми только в том случае, когда они относятся к одному домену. В нашем примере значения доменов "Номера пропусков" и "Номера групп" относятся к типу целых чисел, но не являются сравнимыми.
Схема отношения, схема базы данных
Схема отношения - это именованное множество пар {имя атрибута, имя домена (или типа, если понятие домена не поддерживается)}. Степень или "арность" схемы отношения - мощность этого множества. Степень отношения СОТРУДНИКИ равна четырем, то есть оно является 4-арным. Схема БД - это набор именованных схем отношений.
Кортеж, отношение
Кортеж, соответствующий данной схеме отношения, - это множество пар {имя атрибута, значение}, которое содержит одно вхождение каждого имени атрибута, принадлежащего схеме отношения. "Значение" является допустимым значением домена данного атрибута. Кортеж - это набор именованных значений заданного типа.
Отношение - это множество кортежей, соответствующих одной схеме отношения.
Обычным представлением отношения является таблица, заголовком которой является схема отношения, а строками - кортежи отношения-экземпляра; в этом случае имена атрибутов именуют столбцы этой таблицы. Поэтому иногда говорят "столбец таблицы", имея в виду "атрибут отношения". Реляционная база данных - это набор отношений, имена которых совпадают с именами схем отношений в схеме БД.
Основные понятия реляционных БД: нормализация, связи и ключи Нормализация – это пошаговый процесс замены одной таблицы другой. Имеющей более простую структуру. На каждом этапе нормализации таблицы приводятся к некоторому определенному виду. Который называется нормальной формой.
1. Принципы нормализации:
В каждой таблице БД не должно быть повторяющихся полей;
В каждой таблице должен быть уникальный идентификатор (первичный ключ);
Каждому значению первичного ключа должна соответствовать достаточная информация о типе сущности или об объекте таблицы (например, информация об успеваемости, о группе или студентах);
Изменение значений в полях таблицы не должно влиять на информацию в других полях (кроме изменений в полях ключа).
При проектировании БД необходимо создать такую структуру, которая бы обеспечивала минимальное дублирование информации и упрощала процедуры обработки и обновления данных. Требования к состоянию таблиц данных получили название нормальных форм. Первоначально были сформулированы три нормальные формы.
Пример. Имеем сплошную таблицу Сотрудники- проекты.
Номер Сотруд. |
Номер проекта |
Номер задания |
Фам. |
Должн. |
Оклад |
Отдел |
Тел. |
1010 |
AB-115 |
1.1 |
Петров |
Инженер |
550 |
115 |
6-15 |
1010 |
KN-20 |
1.3 |
Петров |
Инженер |
550 |
115 |
6-15 |
1015 |
ZT-14 |
5.2 |
Васильев |
Инженер |
550 |
115 |
6-15 |
1036 |
ZT-14 |
5.4 |
Куликов |
Техник |
450 |
110 |
5-46 |
2122 |
AK-177 |
1.2 |
Зорин |
Администратор |
630 |
105 |
6-88 |
2122 |
BC-18 |
3.6 |
Зорин |
Администратор |
630 |
105 |
6-88 |
В данной таблице отметим те «аномалии», которые наблюдаются для такого представления данных.
Дублируется информация о сотрудниках, поскольку сотрудник может участвовать в нескольких проектах;
В таблицу нельзя вписать тех сотрудников, которые не заняты в проектах именно сейчас, а также тех сотрудников, которые вообще не работают над проектами;
Если сотрудник увольняется, запись о нем удаляется из таблицы, а вместе с ней – и проект, хотя работа над ним должна продолжаться.
Чтобы исключить «аномалии», необходимо преобразовать таблицу – разбить ее на две. Разобьем ее на две: ПРОЕКТЫ и СОТРУДНИКИ.
СОТРУДНИКИ
Номер Сотруд. |
Фам. |
Должн. |
Оклад |
Отдел |
Тел. |
1010 |
Петров |
Инженер |
550 |
115 |
6-15 |
1010 |
Петров |
Инженер |
550 |
115 |
6-15 |
1015 |
Васильев |
Инженер |
550 |
115 |
6-15 |
1036 |
Куликов |
Техник |
450 |
110 |
5-46 |
2122 |
Зорин |
Администратор |
630 |
105 |
6-88 |
2122 |
Зорин |
Администратор |
630 |
105 |
6-88 |
ПРОЕКТЫ
Номер Сотруд. |
Номер проекта |
Номер задания |
1010 |
AB-115 |
1.1 |
1010 |
KN-20 |
1.3 |
1015 |
ZT-14 |
5.2 |
1036 |
ZT-14 |
5.4 |
2122 |
AK-177 |
1.2 |
2122 |
BC-18 |
3.6 |
Рассмотрим табл. Сотрудники. Заметны следующие особенности:
Дублируется информация о телефонах для сотрудников одного отдела;
Если изменяется телефон отдела, необходимо изменять его у всех сотрудников отдела. То же самое с изменением размера окладов.
Нельзя включить данные о новом отделе, пока не будут набраны его сотрудники;
При увольнении всех сотрудников не сохраняются данные о самом отделе.
Поэтому, следуя правилам нормализации, необходимо выполнить декомпозицию таблицы СОТРУДНИКИ и разбить ее на три таблицы: СОТРУДНИКИ, ДОЛЖНОСТИ, ОТДЕЛЫ
СОТРУДНИКИ
Номер Сотруд. |
Фам. |
Должн. |
Отдел |
1010 |
Петров |
Инженер |
115 |
1015 |
Васильев |
Инженер |
115 |
1036 |
Куликов |
Техник |
110 |
2122 |
Зорин |
Администратор |
105 |
ДОЛЖНОСТИ
Должн. |
Оклад |
Инженер |
550 |
Техник |
450 |
Администратор |
630 |
ОТДЕЛЫ
Отдел |
Тел. |
115 |
6-15 |
110 |
5-46 |
105 |
6-88 |
- Говорят, что отношение находится в первой нормальной форме, если все его атрибуты являются простыми. - Говорят, что отношение находится во второй нормальной форме, если оно удовлетворяет требованиям первой нормальной формы и каждый не ключевой атрибут функционально полно зависит от ключа (однозначно определяется им). - Говорят, что отношение находится в третьей нормальной форме, если оно удовлетворяет требованиям второй нормальной формы и при этом любой не ключевой атрибут зависит от ключа нетранзитивно. Транзитивной называется такая зависимость, при которой какой-либо не ключевой атрибут зависит от другого не ключевого атрибута, а тот, в свою очередь, уже зависит от ключа. Основным достоинством реляционной модели является ее простота.