Проектирование базы данных
Понятие о базе данных
Систематизация информации об объектах окружающей природы привело к созданию справочников по самым разнообразным областям человеческого знания. Современная вычислительная техника дает возможность организовать хранение такой информации во внешней памяти компьютера в электронной форме. Такого типа справочники получили название баз данных. Следовательно, под базой данных мы будем понимать упорядоченную совокупность взаимосвязанных сведений по свойствам определенной группы объектов. С определением базы данных связаны следующие понятия:
Информационная система – совокупность содержащейся в базах данных информации и обеспечивающих ее обработку информационных технологий и технических средств.
Банк данных – разновидность информационной системы, в которой реализованы функции централизованного хранения и накопления обрабатываемой информации, организованной в одну или несколько баз данных.
База знаний – база данных, разработанная для управления знаниями (метаданными).
Базы данных могут включать в состав информационного массива различную статистическую, текстовую, графическую и иллюстративную информацию с обязательной ее формализацией (представлением, вводом и выводом определенной, характерной для данной системы форме - формате). Для целого ряда традиционно перерабатываемой информации существуют стандартные форматы ее представления, например: библиография, статистические данные, рефераты, обзоры и другие. Систематизация и поиск информации в базе данных осуществляются тремя основными способами.
Базы данных можно классифицировать по способу установления связей между данными. В этом случае выделяются следующие модели баз данных:
- иерархические;
- сетевые;
- реляционные.
Иерархическаямодель позволяет создавать базы данных, состоящие из упорядоченного набора информационных записей по свойствам отдельных объектов. Между записями в иерархии могут быть определены отношения «один к одному» или «один ко многим». Здесь запись, соответствующая элементу «один» указанной связи, определяется как исходная (предок), а соответствующая элементу «много» - как порожденная (потомок).
Рис.1. Структура иерархической базы данных
В иерархических базах данных автоматически поддерживается целостность ссылок между предками и потомками. Основное правило: никакой потомок не может существовать без своего родителя.Следует отметить, что аналогичное поддержание целостности по ссылкам между записями, не входящими в одну иерархию, не поддерживается. Ярким примером иерархической базы данных является файловая система диска внешней памяти персонального компьютера.
Сетеваямодель организации данных является расширением иерархической модели базы данных. В иерархических структурах запись-потомок должна иметь в точности одного предка; в сетевой структуре данных потомок может иметь любое число предков. Такую связь принято называть «многие ко многим». Сетевая база данных состоит из набора записей и набора связей между этими записями.
Рис.2. Структура сетевой базы данных
Реляционная модель базы данных является наиболее удобной формой представления данных. В реляционной модели базы данных сведения об объектах представлены в виде совокупности взаимосвязанных таблиц. В математике этому соответствует термин «отношение» (англ. - relation), от которого и произошло название модели.
Рис. 3. Структура реляционной модели данных
При установлении связей нужно определить, какая таблица является главной, а какая - подчиненной. Отношение «один к одному» означает, что одной записи подчиненной таблицы соответствует только одна запись в главной таблице. Такие отношения встречаются очень редко, так как занимают неоправданно много места в базе данных. Вместо них можно просто добавить поля подчиненной таблицы к полям главной. Наиболее часто используются отношения «один ко многим». В этом случае одной записи в главной таблице соответствует несколько записей в подчиненной таблице. Для создания отношений необходимо указать поля в двух таблицах, которые содержат одни и те же данные. Имена связывающих полей могут отличаться друг от друга, но типы и свойства должны совпадать.
Одним из основных преимуществ реляционной модели является ее однородность. Все данные рассматриваются как хранимые в таблицах, в которых каждая строка имеет один и тот же формат. Каждая строка в таблице представляет некоторый объект реального мира или соотношение между объектами. В дальнейшем мы и будем рассматривать только реляционные базы данных.
Структура базы данных
Рассматриваемые в базе данных сведения должны быть связаны между собой так, чтобы можно было составить общее представление об исследуемых объектах. Это достигается путем их объединения по определенным признакам. Такой процесс получил название структурированияданных. Следовательно, под структурированием данных мы будем понимать процесс объединения данных по свойствам рассматриваемой группы объектов. Методы занесения данных и хранения их в базе определяет структура базы.
В качестве основных структурных элементов базы данных принято рассматривать следующие понятия:
- поле;
- запись;
- файл базы данных.
Полемпринято называть наименьший элемент структуры базы данных, предназначенный для ввода сведений по отдельному признаку объекта. Поля обладают собственными свойствами. От свойств полей зависит, какие типы данных можно вносить в эти поля, а также что можно делать с данными, содержащимися в конкретном поле базы данных.
Структурабазы данных определяется количеством, названием и порядком расположения полей, которые соответствуют описываемым признакам объектов. Поэтому остановимся более подробно на описании свойств такого структурного элемента базы данных как поле.
Основным свойством любого поля является его длина. Длина поля выражается либо количеством символов, либо количеством цифр в числе. От длины поля зависит, сколько информации в нем может поместиться.
Уникальным свойством любого поля является его имя. Именем поля называется информация, однозначно определяющее выбранное свойство объекта. Например, если базой данных считать телефонный справочник, то в качестве имен полей можно выбрать такие свойства группы лиц, рассматриваемых как объекты базы данных, как фамилия, номер телефона, адрес абонента.
Для каждого поля необходимо также указать его тип данных. Тип данных определяет вид и диапазон допустимых значений, которые могут быть введены в поле, а также объем памяти, выделяющийся для этого поля.
Записью базы данных называется совокупность полей, содержащих информацию о свойствах отдельного объекта. Каждая запись содержит всю необходимую информацию об отдельном объекте базы данных. Например, запись о студенте может содержать номер его личного дела, фамилию, имя, отчество, пол, дату рождения, номер учебной группы. Ключ к записям в базе данных может быть составной и простой.
Основным структурным элементом базы данных является файл базы данных. Файлом базы данных называется набор записей по свойствам всех объектов базы данных, представленный во внешней памяти компьютера в виде файла. Каждый файл базы данных содержит записи определенного вида, например, обо всех студентах, обучающихся в высшем учебном заведении. Количество записей указывает на то, сколько объектов описано в данной базе данных.
Проектирование базы данных
Процесс создания базы данных состоит из следующих этапов;
I. Выбор группы однотипных объектов и присваивание имени файлу базы данных.
II. Формирование структуры таблицы
III. Заполнение полей записей базы данных.
IV. Редактирование данных и добавление в базу данных новых записей.
На первом этапе проектирования определяются объекты, свойства которых будут совместно описаны в будущей базе данных. На этом же этапе необходимо выбрать имя файла, в котором будет, в дальнейшем, хранится база данных. Имя является необходимым отличительным признаком базы данных и, как правило, указывает на класс описываемых в таблице объектов. Например, базе данных о студентах определенной группы можно присвоить имя Группа.
Вторым этапом при создании таблицы является формирование структуры таблицы, путем определения перечня полей, из которых должна состоять таблица, выбор их типов и размеров.
Например, в MS Access существуют четыре способа создания пустой таблицы:
1. Мастер по созданию базы данных позволяет создать сразу все таблицы, формы и отчеты в базе данных. Этот мастер создает новую базу данных; его нельзя использовать для добавления новых таблиц, форм или отчетов в существующую базу данных.
2. Мастер по созданию таблицы позволяет выбрать поля, включаемые в таблицу, из широкого списка образцов полей разных типов, предназначенных для сохранения данных о деловых контактах, для ведения домашнего хозяйства или для регистрации медицинской информации.
3. Пользователь имеет возможность самостоятельно ввести данные в пустую таблицу в режиме Таблицы. При сохранении новой таблицы Microsoft Access проанализирует данные и автоматически присвоит соответствующий тип данных и формат каждому полю.
4. В режиме Конструктора можно непосредственно указать параметры всех элементов структуры таблицы.
На третьем этапе производится ввод данных в таблицу базы данных. При этом вдоль верхнего края окна будут расположены имена полей. Каждое поле соответствует определенному столбцу в таблице. Каждая запись будет занимать одну строку таблицы. В таблице можно создать новую незаполненную запись после последней записи таблицы. Новая запись может быть также представлена в виде формы с пустыми полями. Данные вводятся в каждое поле по отдельности.
Данные в таблицу вводить намного удобнее, если воспользоваться представлением данных в виде формы. Такой способ ввода позволяет видеть все данные одной записи и вводить дополнительный текст, поясняющий значение каждого поля. Можно создать форму, напоминающую печатный бланк, расположить в ней окна списков, фотографии или графики. Формы и отчеты могут строиться на основе таблиц или запросов.
На четвертом этапе производится редактирование данных и добавление в базу данных новых записей. Редактировать данные в полях таблицы можно как с полной, так и с частичной их заменой. Кроме этого мы можем добавлять, а также и удалять отдельные записи в редактируемой базе данных.