Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Файлы как отношения на базах данных.
Любой набор (x1,..., xn) является элементом множества A1´ A2´...´ An. А значит, задав подмножество A1´ A2´...´ An, мы задаем некоторое отношение на множествах A1, A2,..., An. Или можно сказать, что переменные x1,..., xn связаны отношением: S(x1,..., xn). Имея конкретный набор значений (x1,..., xn), можно выяснить, истинно S или ложно. Часто S нельзя задать хорошей формулой. Поэтому на практике чаще встречается первый способ задания отношений -непосредственным заданием наборов (x1,..., xn). Определение 1: При обработке данных наборы из n элементов называют записями. Элементы наборов называют полями. То есть (x1,..., xn)- запись, x1,..., xn - поля. Записи (множества наборов), определяющие отношение, содержатся в файле. Если потребовать, чтобы несколько файлов содержали совокупность записей, удовлетворяющих некоторым отношениям, то мы получим реляционную (относительную) базу данных. Современная теория баз данных включает в себя изучение так называемых нормальных форм файлов. Однако обоснование работы с ними очевидно лишь в простых случаях. Рассмотрим некоторые из них. Определение 2: Файлы в первой нормальной форме(1 NF), или более просто нормализованные файлы содержат записи фиксированной длины, состоящие из элементов, которые более не могут быть разбиты (то есть не являются записями). Значит, в случае 1NF каждая запись, будучи набором из n элементов, может быть записана как строка массива. Пример 1: Рассмотрим отношение «быть членом одной семьи» - FAM1. Каждая запись содержит в указанном порядке фамилию и имена отца, матери и детей: (Смит, Джой, Джойс, (Сэлли, Бен))Î FAM1 (Браун, Фред, Лиза, (Люси)) Î FAM1 Если S – множество фамилий, F - множество отцов, M - матерей, C - детей, то ясно, что Джой(Смит) Î F, Лиза(Браун) Î M, ЛюсиÎ C, а вот Сэлли и Бен не будут являться членами семьи Смит. Так как в этой семье более одного ребенка, то соответствующая запись длиннее и, следовательно, нарушены условия 1NF. Вообще, в этом случае FAM1 не является подмножеством S´ F´ M´ C. Однако из FAM1 можно получить отношение FAM2: (Смит, Джой, Джойс, Сэлли) (Смит, Джой, Джойс, Бен) (Браун, Фред, Лиза, Люси) Это отношение уже находится в 1NF и можно заполнить соответствующую таблицу:
Определение 2: При использовании таблицы для изображения отношения (файла с n – мерными записями в виде строк) столбцы называются атрибутами полей. Следовательно, фамилия, отец, мать, ребенок - атрибуты полей в файле FAM2. Для получения доступа к записям в файле используются так называемые ключи: Определение 3: Атрибут или упорядоченное множество атрибутов, чьи значения однозначно определяют запись в файле, называют ключом этого файла (у файла может быть много различных ключей). В описываемом выше примере каждый ключ файла должен содержать атрибут РЕБЕНОК. Однако непонятно, что будет, если супруги Джонс не имеют детей? если мы хотим иметь в файле запись о них, то следует изменить структуру файла. Вопросами допустимых изменений файлов, то есть удаление полей, добавление полей, разбиение файлов на классы по атрибутам занимается реляционное исчисление (то есть теория реляционных (относительных) баз данных), о котором вы узнаете в курсе информатики.
|