1. Гарсиа-Молина Г., Ульман Дж., Уидом Дж. Системы баз данных. Полный курс.: Пер. с англ. – М.: Издательский дом «Вильямс», 2003.
2. Дейт К.Дж. Введение в системы баз данных, 8-е издание.: Пер. с англ. — М.: Издательский дом «Вильямс», 2005.
- Кубрак В.А. Основы проектирования баз данных. Учебное пособие. Л.: ЛИАП, 1985.
4. Мейер Д. Теория реляционных баз данных. М.: Мир, 1987.
- Мирошниченко Г.А. Реляционные базы данных: практические приемы оптимальных решений.- СПб.: БХВ-Петербург, 2005.
6. Преснякова Г.В. Проектирование интегрированных реляционных баз данных. – М.: КДУ; СПб.: Петроглиф, 2007.
7. Хомоненко А.Д., Цыганков В.М., Мальцев М.Г. Базы данных: Учебник для высших учебных заведений / Под редакцией проф. А.Д. Хомоненко. – 6-е изд. доп. – СПб.: КОРОНА-Век, 2009.
- Bernstan P.A. Syntheciring Third Normal Form Relations from Functional Dependencies. – ACM Trans. On Database Syst., 1976, 1, № 4, p. 277 – 298.
- Chen P. P-S. The entity-Relationship Modell. Toward a Unifed View of Data. – ACM Transactions on Database Systems, v.1, №1, March, 1976.
- Codd E.F. Further Normalization of the Data Base Relation Model // Data Base Systems, Courant Computer Science Symposia Series 6. – Englewood Cliffs, N.J.: Prentice-Hall, 1972.
- Codd E.F. Recent Investigation into Relational Data Base Systems // Proc. IFIP Congress. – Stockholm, Sweden, 1974.
- Fagin R. Multivalued Dependencies and a New Normal Form For Relational Databases // ACM TODS. – 1977. – 2, № 3.
- Isloor S.S. An Algorithm with Logical Symlicity for Desighing Third Normal Form Relational Data Base Schema from Functional Dependencies. – In: Proc. ACM SIGMOD Int. Conf. Manag. Data, Milano, 1978, p. 31 – 50.
- Chen P. P-S. The entity-Relationship Modell. Toward a Unifed View of Data. – ACM Transactions on Database Systems, v.1, №1, March, 1976.
Приложение. Основные термины и определения
Предметная область - часть реального мира, интересующая пользователя (транспорт, министерство, банк, вуз, больница, процесс, предприятие или его часть: бухгалтерия, цех,...).
Сущность - объект и (или) факт предметной области, информацию о которых необходимо хранить в базе данных.
Атрибут - поименованная характеристика сущности. Например, в предметной области ПРЕДПРИЯТИЕ объект по имени СЛУЖАЩИЙ можно описать атрибутами с именами ТАБ_НОМЕР, ФИО, НОМЕР_ОТДЕЛА, ДОЛЖНОСТЬ,..., а факт НАЗНАЧЕНИЕ - атрибутами: ПРОЕКТ, ФИО_СЛУЖАЩЕГО.
Для каждого атрибута определяются:
§ имя (ТАБ_НОМЕР, ФИО,...);
§ тип (числовой, символьный,...);
§ значение или экземпляр (2, Иванов С.И.,...);
§ роль, которую играет атрибут в приложении (прикладной программе) пользователя.
Аналогично для сущности определяется имя и экземпляр. Экземпляр сущности определяется набором экземпляров всех ее атрибутов. Например, экземпляром для сущности СЛУЖАЩИЙ (ТАБ_НОМЕР, ФИО, НОМЕР_ОТДЕЛА, ДОЛЖНОСТЬ,...) может быть
10, Иванов С.И., 4, инженер или
20, Петров И.С., 3, механик
.........................
Атрибут может выступать в роли первичного, возможного первичного, ключевого, неключевого, ключа связи (внешнего ключа).
Первичный (идентифицирующий) ключ (Primary Key) – атрибут или набор атрибутов, однозначно определяющий экземпляр сущности. Так, если все служащие имеют различные табельные номера, то атрибут ТАБ_НОМЕР может выступать в роли первичного ключа для сущности СЛУЖАЩИЙ. Первичный ключ может быть простым (один атрибут) или составным (несколько атрибутов).
Возможный первичный ключ – атрибут или набор атрибутов, который также однозначно определяет экземпляр сущности. Поскольку для сущности может быть определен только один первичный ключ, то второй называется возможным первичным ключом (уникальным). Например, если ТАБ_НОМЕР объявляется первичным ключом, то НОНОМЕР_ПАСПОРТА будет возможным первичным ключом или наоборот.
Ключевой атрибут - атрибут, выступающий в роли первичного или возможного первичного ключа или входящий в их состав.
Неключевой атрибут - атрибут, который не является первичным ключом и не входит в состав первичного или возможного первичного ключа.
Внешний ключ – атрибут, который используется для связи одной сущности с другой.
База данных (БД) - это именованная совокупность хранимых данных, отображающая состояние сущностей и их отношений в рассматриваемой предметной области.
Система управления базой данных (СУБД) – это комплекс языковых и программных средств для создания и ведения баз данных. Термин “ведение” подразумевает управление (манипулирование) данными.
Реляционная база данных (relation – отношение) состоит из набора взаимосвязанных таблиц (отношений). Таблица и отношение – слова синонимы.
Универсальный ключ, или суперключ – это, как правило, набор атрибутов, который определяет все атрибуты базы данных.