Главная страница
Навигация по странице:

  • Таблица Имя поля Тип данных Размер поля

  • Инфологическое проектирование базы данных


    Скачать 0.6 Mb.
    НазваниеИнфологическое проектирование базы данных
    Дата01.02.2023
    Размер0.6 Mb.
    Формат файлаdocx
    Имя файла1.docx
    ТипДокументы
    #916395

    Титульный лист


    Оглавление


    Введение 3

    1.Инфологическое проектирование базы данных 4

    1.1.Теоретическое описание методологии проектирования баз данных 4

    1.2.Описание выбранной СУБД 7

    1..3. Диаграмма «сущность-связь» 10

    1.4. Описание каждой сущности 11

    2.Логическое проектирование базы данных 13

    2.1.Логическое проектирование реляционной базы данных 13

    2.2. Типовые запросы на выборку данных 16

    2.3. Описание интерфейса пользователя 18

    Заключение 20

    СПИСОК ЛИТЕРАТУРЫ 21

    Приложение 1 22


    Введение



    В данном курсовом проекте в качестве предметной области рассматривается железнодорожная касса. Наша база данных решает следующие задачи: учёт вагонов, выдача данных о расписании и автоматизирует учет продаж билетов (с последующим выводом билета на печать).

    Применяемая СУБД: АССЕSS 2003 .

    Исходные данные о железнодорожной кассе: продают билеты на поезда. Каждый поезд имеет определенный номер и маршрут следования, дни отправления (ежедневно, по четным или нечетным числам, по определенным дням недели). В составе каждого поезда имеется определенный набор вагонов (мягкие, купейные, плацкартные, общие), причем общее числовагонов в поездеи их распределения по типам варьируется в зависимотси от номера поезда, но для каждого номера поезда остается постоянным и не зависимым от даты его отправления

    1. Инфологическое проектирование базы данных

      1. Теоретическое описание методологии проектирования баз данных


    Метод IDEF1, разработанный Т.Рэмей (T.Ramey), основан на подходе П.Чена и позволяет построить модель данных, эквивалентную реляционной модели в третьей нормальной форме. В настоящее время на основе совершенствования методологии IDEF1 создана ее новая версия - методология IDEF1X. IDEF1X разработана с учетом таких требований, как простота изучения и возможность автоматизации. IDEF1X-диаграммы используются рядом распространенных CASE-средств (в частности, ERwin, Design/IDEF).

    Сущность в методологии IDEF1X является независимой от идентификаторов или просто независимой, если каждый экземпляр сущности может быть однозначно идентифицирован без определения его отношений с другими сущностями. Сущность называется зависимой от идентификаторов или просто зависимой, если однозначная идентификация экземпляра сущности зависит от его отношения к другой сущности (рисунок 1).



    Рис. 1. Сущности

    Каждой сущности присваивается уникальное имя и номер, разделяемые косой чертой "/" и помещаемые над блоком.

    Связь может дополнительно определяться с помощью указания степени или мощности (количества экземпляров сущности-потомка, которое может существовать для каждого экземпляра сущности-родителя). В IDEF1X могут быть выражены следующие мощности связей:

    • каждый экземпляр сущности-родителя может иметь ноль, один или более связанных с ним экземпляров сущности-потомка;

    • каждый экземпляр сущности-родителя должен иметь не менее одного связанного с ним экземпляра сущности-потомка;

    • каждый экземпляр сущности-родителя должен иметь не более одного связанного с ним экземпляра сущности-потомка;

    • каждый экземпляр сущности-родителя связан с некоторым фиксированным числом экземпляров сущности-потомка.

    Если экземпляр сущности-потомка однозначно определяется своей связью с сущностью-родителем, то связь называется идентифицирующей, в противном случае - неидентифицирующей.

    Связь изображается линией, проводимой между сущностью-родителем и сущностью-потомком с точкой на конце линии у сущности-потомка. Мощность связи обозначается как показано на рисунке 2 (мощность по умолчанию - N).



    Рис.2. Мощность связи

    Идентифицирующая связь между сущностью-родителем и сущностью-потомком изображается сплошной линией (рисунок 3). Сущность-потомок в идентифицирующей связи является зависимой от идентификатора сущностью. Сущность-родитель в идентифицирующей связи может быть как независимой, так и зависимой от идентификатора сущностью (это определяется ее связями с другими сущностями).



    Рис. 3. Идентифицирующая связь

    Пунктирная линия изображает неидентифицирующую связь (рисунок 4). Сущность-потомок в неидентифицирующей связи будет независимой от идентификатора, если она не является также сущностью-потомком в какой-либо идентифицирующей связи.



    Рис. 4. Неидентифицирующая связь

    Атрибуты изображаются в виде списка имен внутри блока сущности. Атрибуты, определяющие первичный ключ, размещаются наверху списка и отделяются от других атрибутов горизонтальной чертой (рисунок 5).



    Рис. 5. Атрибуты и первичные ключи

    Сущности могут иметь также внешние ключи (Foreign Key), которые могут использоваться в качестве части или целого первичного ключа или неключевого атрибута. Внешний ключ изображается с помощью помещения внутрь блока сущности имен атрибутов, после которых следуют буквы FK в скобках (рисунок 6).



    Рис. 6. Примеры внешних ключей

      1. Описание выбранной СУБД



    Microsoft Access — это серьезная среда разработки приложений с полнофункциональным языком программирования. Язык VBA (ранее известный как Access Basic) реализует объектно-ориентированный подход к программированию и позволяет программисту делать практически все, что только можно себе представить. Это мощный язык структурного программирования. Он является полностью расширяемым и поддерживает процедуры API в любых динамических библиотеках (DLL) операционных систем Windows 95 и Windows NT (XP), Windows Vista, Windows 7).
    Полнофункциональная среда разработки поддерживает множество мощных современных возможностей: многооконный режим для редактирования и отладки, автоматическую проверку синтаксиса, контрольные точки, пошаговое выполнение и даже синтаксическую справку, отображающую на экране варианты вводимых команд.

    Опытный пользователь Excel (или 1-2-3) заметит, что Access и Excel во многом похожи. Во-первых, обе эти программы — продукты Windows, поэтому ему должны быть уже привычны соглашения Windows, которые будут использоваться и при работе с Access. Внешний вид таблиц и запросов Access соответствует внешнему виду электронных таблиц и носит название таблицы данных (datasheet). Размеры строк и столбцов таблиц можно изменять точно так же, как и в рабочих листах Excel. По сути дела, режим ввода данных в Access 97 соответствует режиму ввода данных Excel. Нужно просто ввести данные и определить заголовки столбцов; все остальное Access сделает автоматически. 
    Access, как и Excel, поддерживает режим WYSIWYG и работу с графическим приложением Microsoft Graph. Таким образом, у пользователя всегда есть возможность создавать в обеих системах однотипные диаграммы. Кроме того, в Access входит мастер диаграмм, аналогичный используемому в Excel. 
    Как и в Excel, в Access предусмотрен мастер сводных таблиц; по сути, с его помощью можно создавать сводные таблицы Excel: информацию из баз данных Access можно легко переносить в таблицы Excel. Базы данных Access можно связывать с таблицами Excel. В обоих продуктах можно создавать запросы и выполнять сортировку, используя один и тот же интерфейс. (Если читателю приходилось использовать меню Excel для формирования запросов и критериев сортировки данных, значит, эти понятия ему уже знакомы.) Словом, система Access функционально совместима со всеми продуктами Office.

    Не случайно многие популярные полнофункциональные СУБД имеют средства как для пользователей и администраторов, так и для разработчиков. Так, СУБД Microsoft Access позволяет использовать для программирования встроенных приложений Visual Basic.

    • Удобство и простота использования

    • Понятие удобства и простоты использования довольно расплывчатое, со временем изменяется.

    Характеристики:

    • понятные процедуры установки программных продуктов (особенно
      сетевые установки с множеством рабочих мест);

    • удобный и интуитивно понятный интерфейс конечного пользователя;

    • простота выполнения обычных операций: создания БД, навигации,
      модификации данных, подготовка и выполнение запросов и отчётов;

    • наличие интеллектуальных подсистем подсказок, помощи в процессе работы и обучения, включая предоставления примеры.


    Модель представления данных

    В настоящее время наиболее распространенной и отработанной практически и теоретически является реляционная модель данных. К ним относятся и СУБД Microsoft Access. Перспективными являются модели с объектной ориентацией.
    Качество средств разработки

    При оценке качества средств разработки учитывается следующее:

    • возможности создания пользовательских интерфейсов;

    • мощность языка создания программ (автоматическая генерация кода, откладка, обеспечения целостности данных на уровне процессора БД, а не с помощью команд языка);

    • автоматизация разработки различных объектов: экранных форм, отчетов, запросов, макросов.


    Качество средств защиты и контроля корректности БД

    Актуальное требование защиты информации в современных информационных системах требует принятия адекватных мер в СУБД.

    Доступ к функциям защиты должен предусматриваться на уровне разработки программ и на уровне пользователя (обычного пользователя, администратора БД).

    К важнейшим функциям контроля корректности БД относятся следующие:

    • обеспечения уникальности записей БД по внешнему ключу (не каждая полнофункциональная СУБД это делает);

    • автоматический контроль целостности данных (ссылочная
      целостность) между таблицами во время выполнения операций обновления, вставки и удаления записей;

    • проверка корректности значения в БД (контроль типа данных,
      совпадение с шаблоном, определение диапазона допустимых значений, контроль значения по справочной таблице и д.р.).


    Качество коммуникационных средств

    При оценке качества коммуникационных средств обращают внимание на следующие свойства программных продуктов:

    • поддержку сетевых интерфейсов с БД: SQL, ODBC, СAA и др.;

    • наличие средств групповой работы с информации БД (языковые
      средства разработки, функции интерфейса пользователя, функции администратора БД по организации групп, разграничению полномочий для защиты от несанкционированного доступа и т.д.);

    • способность использовать и модифицировать БД других форматов без импортирования или преобразования.

    Access содержит все необходимые инструменты для создания и эксплуатации БД. Access имеет удобный и понятный интерфейс, позволяющий выполнить все заложенные в БД функции понятные любому пользователю. Так же в него встроены различные мастера, конструкторы построители, которые значительно облегчают процесс проектирования.

    1..3. Диаграмма «сущность-связь»




    Рис. 7. Диаграмма «сущность-связь»

    1.4. Описание каждой сущности




    Таблица

    Имя поля

    Тип данных

    Размер поля

    1

    Поезд

    Номер поезда

    Счетчик

    Длинное целое

    2

    Место отправки

    Текстовый

    100

    3

    Пункт назначения

    Текстовый

    100

    4

    Дни отправления

    Текстовый

    30

    5

    Вагоны

    Номер вагоны

    Счетчик

    Длинное целое

    6

    Тип вагона

    Текстовый

    50

    7

    Пассажир

    Код пассажира

    Счетчик

    Длинное целое

    8

    Фамилия

    Текстовый

    50

    9

    Вид документа

    Текстовый

    50

    10

    Рег данные документа

    Текстовый

    250

    11

    Путь

    Код пути

    Счетчик

    Длинное целое

    12

    Номер поезда

    Числовой

    Длинное целое

    13

    Номер вагона

    Числовой

    Длинное целое

    14

    Дата отправления

    Дата/время

    8

    15

    Билет

    Код билета

    Счетчик

    Длинное целое

    16

    Код пассажира

    Числовой

    Длинное целое

    17

    Код пути

    Числовой

    Длинное целое

    18

    Начальная станция

    Текстовый

    100

    19

    Конечная станция

    Текстовый

    100

    20

    Номер места

    Числовой

    Длинное целое

    21

    Стоимость

    Денежный

    8

    22

    Вагоны поезда

    Код вагона поезда

    Счетчик

    Длинное целое

    23

    Код пути

    Числовой

    Длинное целое

    24

    Номер вагона

    Числовой

    Длинное целое


    1. Логическое проектирование базы данных

      1. Логическое проектирование реляционной базы данных


    Таблица Вагоны в СУБД Access имеет следующую структуру:



    Рис. 8. Таблица «Вагон» в режиме конструктора

    Таблица Поезд в СУБД Access имеет следующую структуру:



    Рис. 9. Таблица «Поезд» в режиме конструктора

    Таблица Путь в СУБД Access имеет следующую структуру:



    Рис. 10. Таблица «Путь» в режиме конструктора

    Таблица Вагоны поезда в СУБД Access имеет следующую структуру:



    Рис. 11. Таблица «Вагоны поезда» в режиме конструктора

    Таблица Пассажир поезда в СУБД Access имеет следующую структуру:



    Рис. 12. Таблица «Пассажир» в режиме конструктора

    Таблица Билет поезда в СУБД Access имеет следующую структуру:



    Рис. 13. Таблица «Билет» в режиме конструктора

    Схема данных имеет следующий вид:



    Рис. 14. Схема данных

    Рассматривая три операции (вставка, обновление, удаление) для родительской и дочерней сущностей данной связи можно определить следующие стратегии поддержания ссылочной целостности данных:

    1. RESTRICT (ОГРАНИЧИТЬ)- не разрешать выполнение операции, приводящей к нарушению ссылочной целостности. Это самая простая стратегия, требующая только проверки, имеются ли экземпляры в дочерней сущности, связанные с некоторым экземпляром в родительской сущности.

    2. CASCADE (КАСКАДИРОВАТЬ)- разрешить выполнение требуемой операции, но внести при этом необходимые поправки в других сущностях так, чтобы не допустить нарушения ссылочной целостности и сохранить все имеющиеся связи. Изменение начинается в родительской сущности и каскадно выполняется в дочерней сущности. В реализации этой стратегии имеется одна тонкость, заключающаяся в том, что дочерняя сущность сама может быть родительской для некоторой третьей сущности. При этом может дополнительно потребоваться выполнение какой-либо стратегии и для этой связи и т.д. Если при этом какая-либо из каскадных операций (любого уровня) не может быть выполнена, то необходимо отказаться от первоначальной операции и вернуть базу данных в исходное состояние. Это самая сложная стратегия, но она хороша тем, что при этом не нарушается связь между экземплярами родительской и дочерней сущностей.
    Таким образом, для данной связи операции удаление КАСКАДИРУЕТСЯ, а обновление КАСКАДИРУЕТСЯ.

    Связь из сущности Поезд в сущность Путь:

    Удаление КАСКАДИРУЕТСЯ, обновление КАСКАДИРУЕТСЯ

    Связь из сущности Поезд в сущность Вагоны поезда:

    Удаление КАСКАДИРУЕТСЯ, обновление КАСКАДИРУЕТСЯ

    Связь из сущности Вагон в сущность Вагоны поезда:

    Удаление КАСКАДИРУЕТСЯ, обновление КАСКАДИРУЕТСЯ

    Связь из сущности Путь в сущность Билет:

    Удаление КАСКАДИРУЕТСЯ, обновление КАСКАДИРУЕТСЯ

    Связь из сущности Пассажир в сущность Билет:

    Удаление КАСКАДИРУЕТСЯ, обновление КАСКАДИРУЕТСЯ

    В СУБД Access установка данных свойств производится в следующем окне:



    Рис. 15. Свойства связей

    2.2. Типовые запросы на выборку данных


    Билет пассажира:

    SELECT Билет.[Код билета], Пассажир.Фамилия, Пассажир.[Вид документа], Пассажир.[Рег данные документа], Поезд.[Номер поезда], Билет.[Начальная станция], Билет.[Конечная станция], Путь.[Дата отправления], Вагон.[Номер вагона], Вагон.[Тип вагона], Билет.[Номер места], Билет.Стоимость

    FROM (Поезд INNER JOIN (Вагон INNER JOIN Путь ON Вагон.[Номер вагона] = Путь.[Номер вагона]) ON Поезд.[Номер поезда] = Путь.[Номер поезда]) INNER JOIN (Пассажир INNER JOIN Билет ON Пассажир.[Код пассажира] = Билет.Пассажир) ON Путь.[Код пути] = Билет.Путь

    WHERE (((Билет.[Код билета])=[Forms]![Билет]![Код билета]));

    Результат



    Рис. 16. Результат запроса «Билет пассажира»

    Пассажиры пути:

    SELECT Путь.[Код пути], Пассажир.Фамилия

    FROM Путь INNER JOIN (Пассажир INNER JOIN Билет ON Пассажир.[Код пассажира] = Билет.Пассажир) ON Путь.[Код пути] = Билет.Путь

    WHERE (((Путь.[Код пути])=[Forms]![Путь]![Код пути]));

    Результат



    Рис. 17. Результат запроса «Пассажиры пути»

    Расписание:

    SELECT Поезд.[Номер поезда], Поезд.[Место отправления], Поезд.[Пункт назначения], Поезд.[Дни отправления], Путь.[Дата отправления]

    FROM Поезд INNER JOIN Путь ON Поезд.[Номер поезда] = Путь.[Номер поезда];

    Результат



    Рис. 18. Результат запроса «Расписание»

    Выручка за месяц:

    SELECT Путь.[Код пути], Путь.[Номер поезда], Путь.[Дата отправления], Sum(Билет.Стоимость) AS [Sum-Стоимость]

    FROM Путь INNER JOIN Билет ON Путь.[Код пути] = Билет.Путь

    GROUP BY Путь.[Код пути], Путь.[Номер поезда], Путь.[Дата отправления]

    HAVING (((Month([Дата отправления]))=Month(Date())));

    Результат



    Рис. 19. Результат запроса «Выручка за месяц»

    2.3. Описание интерфейса пользователя


    Интерфейс – это приложение, работающее с базой данных, и обеспечивающее выполнение следующих функций:

    • ввод информации в БД;

    • удаление информации из БД;

    • редактирование внесенной информации;

    • выборка данных по различным критериям;

    • формирование отчетов и вывод информации из базы данных на экран или на печать.

    Данные функции в Microsoft ACCESS реализуются с помощью форм.

    Одной из основных задач создания и использования баз данных является предоставление пользователям необходимой информации на основе существующих данных. В Access 2003 для этих целей предназначены формы и отчеты. Отчеты позволяют выбрать из базы данных требуемую пользователем информацию и оформить ее в виде документов, которые можно просмотреть и напечатать. Источником данных для отчета являются таблица или запрос. Кроме данных, полученных из таблиц, в отчете могут отображаться вычисленные по исходным данным значения, например итоговые суммы.

    Отчеты и формы Access имеют много общего. Однако, в отличие от форм, отчеты не предназначены для ввода и правки данных в таблицах. Они позволяют лишь просматривать и печатать данные. В отчете невозможно изменить исходные данные с помощью элементов управления, как это можно сделать с помощью форм. Хотя в отчетах можно использовать такие же элементы управления для указания состояния переключателей, флажков и списков.

    Интерфейс БД «Железнодорожные кассы» состоит из 7 форм и 3 отчетов.

    При открытии программы пользователю отображается главное окно программы. С помощью него можно перейти на дочерние формы для заполнения справочной информации, а так же для заполнения данных о продаже билетов и формирование путей поездов. При нажатии на главной форме на кнопки отчетности открываются одноименный отчеты, отображающие информацию по соответствующим пунктам.

    Заключение


    Главным результатом проведенной работы является создание функционирующей БД, которая выполняет требуемый круг задач, с которыми сталкиваются сотрудники железнодорожных касс.

    Реализация данного проекта была проведена без привлечения мощных средств работы с базами данных, которые очень громоздки, поскольку носят универсальный характер и к тому же требуют необходимую базу знаний по теории баз данных.

    Использование мощных средств Access по созданию приложений работающих в операционной системе Windows и в частности приложений баз данных, позволило создать программный продукт максимально ориентированный на конечного пользователя, который не искушен в вопросах теории баз данных.

    Вся необходимая работа по осуществлению методов доступа к информации хранимой в базе данных, её модификации, поддержании базы данных в целостном виде скрыта внутри и пользователю нет необходимости знать о ней, чтобы успешно решать весь круг возникающих задач связанных с использованием информации хранимой базе данных. Более того, программный интерфейс максимально облегчает работу по обращению с базой данных.

    Все функции выполняемые БД были тщательным образом проверены и протестированы в процессе разработки и их работа гарантируется.

    Данный продукт без сомнения может конкурировать с существующей на данный момент базой данных и средствами её управления.

    СПИСОК ЛИТЕРАТУРЫ




    Бакаревич Ю.Б., Пушкина Н.В. Самоучитель Microsoft Access 2002. – СПб.: БХВ-Петербург, 2002



    Бондарева Г.А., Сахарова Е.В., Королькова Л.Н., Информатика. Методические указания. Ставрополь, СТИС, 2006



    Бойко В.В., Савинков В.М. Проектирование баз данных информационных систем. – М.: Финансы и статистика, 1989.



    Гончаров А. Ю. Access 2003. Самоучитель с примерами., Москва, 2004г.



    Григорьев В.А., Ревунков В.И. Банки данных. Учебник для вузов. – М., МВТУ им.Баумана, 2002.



    Домашняя страница Access: справка и обучение http://office.microsoft.com/ru-ru/access/FX100487571049.aspx



    Мейер М. Теория реляционных баз данных. – М.: Мир, 1987.



    Основы проектирования реляционных баз данных. Электронное учебное пособие.



    Симонович С. В., Евсеев Г. А., Алексеев А. Г. Специальная информатика: Учебное пособие. – М.: АСТ-ПРЕСС: Инфорком-Пресс, 2000



    Хаббард Дж. Автоматизированное проектирование баз данных. – М.: Мир, 1984.


    Приложение 1




    Главная форма



    Форма «Поезд»



    Форма «Вагон»



    Форма «Путь»



    Отчет «Пассажиры пути»



    Форма «Билет»



    Отчет «Билет»



    Форма «Пассажир»



    Отчет «Расписание»



    Отчет «Выручка за месяц»


    написать администратору сайта