Проектирование реляционной базы данных "Электронный краевед"
Курсовой проект - Компьютеры, программирование
Другие курсовые по предмету Компьютеры, программирование
запросов и отчетов к имеющимся уже данным, небольшой объем, затрачиваемый программными модулями, должно осуществляться постепенное накопление данных, осуществление целостности данных.
Выдвинутым требованиям соответствует СУБД, которая входит в комплект поставки пакета приложений Microsoft Office -Microsoft Access 2003
MS Access имеет самый богатый набор визуальных средств для собственного создания запросов и отчетов даже непрофессионалом. СУБД Access имеет русифицированный интерфейс и частично переведенный на русский язык файл контекстной помощи. Также в этой среде осуществляется целостность данных, что дает возможность корректно редактировать данные.
СУБД Access имеет аппарат бинарного сжатия файла, что уменьшает размер БД на диске. Возможно восстановление после сбоев. При возникновении программных или аппаратных сбоев целостность, да и работоспособность всей системы может быть нарушена. От того, как эффективно спланирован механизм восстановления после сбоев, зависит жизнеспособность системы.
Так же немаловажным является поддерживаемое Access средство транзакций и откатов, благодаря которым неопытный пользователь в любое время сможет отменить все изменения, проделанные с БД.
Поэтому для физической реализации данного курсового проекта выбираем СУБД Microsoft Office -Microsoft Access 2003.
4. ЛОГИЧЕСКОЕ ПРОЕКТИРОВАНИЕ БАЗЫ ДАННЫХ
.1 Создание таблиц
Для начала преобразуем ER-диаграмму в схему базы данных, то есть представим каждую сущность и каждую связь, имеющие атрибуты в виде таблицы отношения.
МестаИмя поляТип данныхОписаниеКод_местаСчетчикЧисловой идентификатор места (первичный ключ)ТипТекстТип: музей, памятник и т.д.НазваниеТекстНазвание места или достопримечательностиНаселенный пунктЧислоВнешний ключ на таблицу Населенные пунктыОписаниеТекстОписание местаНаселенные пунктыИмя поляТип данныхОписаниеКод_нпСчетчикИдентификатор (первичный ключ)ТипТекстТип: город, село и т.д.ОписаниеПоле MEMOОписание насел. пунктаНазваниеТекстНазвание населенного пунктаПричина освоенияТекстПричина освоенияВремя освоенияЧислоВнешний ключ для связи с табл. ВременаИзображениеТекстИмя файла с изображением населенного пункта
НаселениеИмя поляТип данныхОписаниеКод насел.СчетчикИдентификатор (первичный ключ)НазваниеТекстНазвание населенияОписаниеПоле MEMOОписание населенияМестоЧислоВнешний ключ для связи с табл. МестаВремяЧислоВнешний ключ для связи с табл. Времена
ВременаИмя поляТип данныхОписаниеКод времениСчетчикИдентификатор (первичный ключ)ДатаКр. формат датыКонкретная дата в году (напр., 25.12.06)Дата началаЧислоГод начала событияДата концаЧислоГод конца событияКр. ОписаниеТекстОписание даты или периода
ЛичностиИмя поляТип данныхОписаниеКод_личностиСчетчикИдентификатор (первичный ключ)ИзображениеТекстИмя файла с изображением личностиОписаниеПоле MEMOОписание личностиИменаТекстодно или несколько имен личностейТипТекстТип: князь, губернатор и т.д.Годы жизниЧислоВнешний ключ для связи с табл. Времена
Таблица События является производной от ассоциативной связи.
СобытияИмя поляТип данныхОписаниеКод событияСчетчикИдентификатор (первичный ключ)ПричинаТекстОписание причины событияОписаниеПоле MEMOПодробное описание событияМестоЧислоВнешний ключ для связи с табл. МестаВремяЧислоВнешний ключ для связи с табл. ВременаЛичностьЧислоВнешний ключ для связи с табл. Личности
Код места, Код н.п., Код населения, Код времени, Код личности, Код события - первичные ключевые поля для каждой из таблиц.
Внешними ключами для таблиц являются:
Места: время, населенный пункт;
Населенные пункты: время освоения;
Население: место, время;
Личности: годы жизни;
События: место, время, личность.
.2 Нормализация отношений
Произведем нормализацию нашей БД. В результате нормализации должны исключиться возможная избыточность данных (один факт должен появляться только в одном месте), в создаваемой инфологической модели.
Преобразуем таблицы по трем нормальным формам:
Отношение находится в 1НФ, если все его атрибуты являются простыми (имеют единственное значение).
Отношение находиться во 2НФ, если оно находиться в 1НФ и каждый неключевой атрибут функционально полно зависит от первичного составного ключа.
Отношение находиться в 3НФ, если оно находиться во 2НФ и каждый неключевой атрибут нетранзитивно зависит от первичного составного ключа (то есть, не зависит функционально от любого другого неключевого поля).
Рассмотрим преобразование таблицы События:
Информация по данному событию представляется простыми атрибутами, имеющими одно значение, то есть таблица находится в 1НФ:
КодОписаниеВремяКр. описание времениМестоОписание местаИмя личности
Очевидно, что неключевые атрибуты не функционально полно зависят от первичного ключа, для этого выделяются отдельные таблицы Время, Место и Личности, в которых эти атирбуты уже функционально полно зависят от ключевых атрибутов получившихся та?/p>