Формирование отчета обычно происходит с помощью так
называемых генераторов отчета.
10.3 Основы нормализации БД
Залогом успеха при создании приложения, работающего с БД, является
оптимальная структурная организация самой базы данных – фундамента всей
системы. Под структурной организацией понимается способ организации
отдельных элементов данных в таблицах и характер отношений этих таблиц
между собой. Недостатки и просчеты, допущенные при «закладке» фундамента,
могут практически свести на нет работу прикладного программиста, поскольку
многократно возрастает сложность программ, затрудняется их сопровождение и
модернизация. Кроме того, слабый проект БД может вынудить программиста
использовать менее эффективные технологии программирования, в результате
чего на создание всего приложения потребуется больше времени, и это при том,
что вероятность содержания в нем скрытых ошибок будет довольно высокой.
Приступая к созданию нового приложения, главное – тщательно
спроектировать структуру его таблиц. Создатель реляционной модели Э.Ф.Кодд
доказал, что следуя при создании наборов только немногим формализованным
правилам, можно обеспечить простоту манипулирования данными. Его
методика получила наименование нормализации данных.
Нормализация – это метод создания набора отношений с заданными
свойствами на основе требований к данным, установленным в некоторой
организации.
Нормализация часто выполняется в виде последовательности тестов для
некоторых отношений (таблиц) с целью проверки его соответствия (или
несоответствия) требованиям заданной нормальной формы. Сначала были
предложены только три вида нормальных форм: первая (1НФ), вторая (2НФ) и
третья (3НФ). Затем Р. Бойсом и Э.Ф. Коддом было сформулировано более
строгое определение третьей нормальной формы, которое получило название
нормальной формы Бойса-Кодда (НФБК). Все эти нормальные формы основаны
на функциональных зависимостях, существующих между атрибутами
отношения.
Вслед за НФБК появились определения четвертой (4НФ) и пятой (5НФ)
нормальных форм. Однако на практике эти нормальные формы более высоких
порядков используются крайне редко.
Таким образом, в практической деятельности в процессе проектирования
БД стремятся удовлетворить условия первых трех нормальных форм.
Рассмотрим процесс нормализации на простом примере. Пусть
необходимо спроектировать БД, содержащую информацию по итогам семестра.
Исходная таблица может содержать, например, такую информацию (табл. 10.2):
Здесь:
НЗ – номер зачетной книжки студента;
Гр – название (номер) учебной группы;
ФИО – фамилия и инициалы студента;
НД, Название – номера и названия дисциплины соответственно;
НП, ФИОП – номер удостоверения и фамилия преподавателя
соответственно;
161