База Данных Касса Автовокзала
Курсовая работа 'База данных 'Автовокзал касса' на Delphi (Дельфи, Делфи). Курсовая работа ИС.
Содержание Введение 1. Разработка требования к базе данных 1.1 Постановка задачи 1.2 Анализ информационных потоков, выбор модели 2. Проектная часть 2.1 Проектирование базы данных 2.2 Создание базы данных 2.3 Программирование Заключение Список использованной литературы Введение В современных условиях возрастает значение информационных систем, позволяющих обеспечить информационную поддержку процессов принятия решений. Базы данных являются одним из основных элементов большинства информационных систем. Базой данных является представленная в объективной форме совокупность самостоятельных материалов, систематизированных таким образом, чтобы эти материалы могли быть найдены и обработаны с помощью электронной вычислительной машины. Рассматривая такую предметную область как автостанция, несомненно, невозможно обойтись без структурирования информации в базу данных.
- Содержание Введение 1. Разработка требования к базе данных 1.1 Постановка задачи 1.2.
- Готовая база данных жд. И проектирование БД «Касса. Создать базу данных «Автовокзал».
База данных обладает, по меньшей мере, тремя важными свойствами (признаками): 1. База данных хранится и обрабатывается в вычислительной системе. Таким образом, любые внекомпьютерные хранилища информации (архивы, библиотеки и т.п.) базами данных не являются. Данные в базе данных хорошо структурированы (систематизированы). Под структурированностью в данном случае понимается явное выделение составных частей (элементов) и связей между ними. Структура базы данных обеспечивает эффективный поиск и обработку данных.
Эффективность здесь главным образом определяется тем, как соотносятся гибкость и мощность возможностей (поиска и обработки) с затратами усилий и ресурсов. Актуальность создания приложения базы данных, как части информационной системы, очевидна - хранение в удобном виде, возможность совместного использования базы данных несколькими пользователями, средства поддержания данных в актуальном состоянии, возможность построения отчетов по запросу пользователя. Разработка требования к базе данных В процессе разработки требований к базе данных можно выделить следующие этапы: 1. Постановка задачи. Анализ информационных потоков, выбор модели. 1.1 Постановка задачи В рамках выполнения курсовой работы требуется разработать базу данных 'Автостанция'. Входные документы.
Расписание рейса А2. Сведения о покупателях В.
Выходные документы. Сведения о свободных местах на рейс B2. Сведения о продаже билетов Реквизиты: Номер рейса, Пункт отправления, Пункт назначения, Дата отправления, Номер автобуса, Основной водитель, Сменный водитель, Количество мест, Проданные места на момент отправления, ФИО водителя, Номер водителя, Дата, Время в пути, Регистрационный номер проданного билета, Номер рейса, Дата отправления, Пункт назначения, Стоимость билета.
Необходима реализация следующих запросов: выдать информацию о наличии свободного билета на рейс; вывести список рейсов в один и тот же город с указанием времени пути и стоимости билета. 1.2 Анализ информационных потоков, выбор модели На данном этапе требуется логически построить информационную систему, призванную автоматизировать процесс учета данных какой-либо области человеческой деятельности; анализируя информационные потоки, необходимо выбрать модель базы данных. В данной курсовой работе требуется разработать приложение для работы с базой данных 'Автостанция', система управления которой предназначена для автоматизации работы автостанций. Автостанция является промежуточным звеном между другими автостанциями и пассажирами. Наличия этого звена выгодно и тем и другим: автостанции объединены в единую сеть с возможностью взаимной реализации билетов и передачи справочной информации; пассажиры, с другой стороны, не имеют проблем с покупкой билетов на тот или другой авторейс. На рис.1 отображены взаимосвязи между автостанцией и ее партнерами Рис.1.
Поле Базы Данных
Пример взаимосвязи информационных потоков Основная задача проектирования базы данных - определение количества отношений и их реквизитного состава. Совокупность реквизитов, объединенных в более крупную единицу данных, называется составной единицей информации. На основе последних можно составить входные и выходные документы базы данных 'Автостанция'.
Рассмотрим входной документ 'Расписание рейса' 1. В общей заголовочной части расположены такие реквизиты, как наименование организации, эмблема организации, главный диспетчер, так как эти реквизиты относятся ко всему документу. К предметным строкам документа относятся в данном случае реквизиты номер рейса, дата отправления, пункт отправления, пункт назначения, время в пути. К заверительной части документа относится реквизит - начальник смены. К реквизиту, предназначенному для улучшения читабельности документа, относится реквизит Расписание рейса, но этот реквизит не подлежит вводу в базу данных.
УТВЕРЖДАЮ Главный диспетчер Петров А. РАСПИСАНИЕ РЕЙСА № Номер рейса Дата отправления Пункт отправления Пункт назначения Время в пути 1 153 Павлодар Экибастуз 2ч. 20мин 2 149 Павлодар Омск 12ч 3 241 Павлодар Аксу 1ч 30 мин 4 111 Павлодар Томск 14ч. 20мин 5 100 Павлодар Семей 6ч. Начальник смены Аналогично следует разработать второй входной документ, который будет выглядеть следующим образом: УТВЕРЖДАЮ Главный диспетчер Петров А. СВЕДЕНИЯ О ПОКУПАТЕЛЯХ № ФИО покупателя № удостоверения/паспорта Гражданство № рейса Место 1 Кренько Олеся Сергеевна 012459213 RUS 153 23 2 Петров Иван Васильевич 012345879 KZ 149 12 3 Ахметов Нурлан Каиргалиевич 034546851 KZ 241 4 4 Пашко Светлана Константиновна 01654745 KZ 111 7 5 Скворцов Сергей Петрович 01245863 RUS 100 10 Начальник смены Рассмотрим выходной документ 'Сведения о свободных местах на рейс' 1. В общей заголовочной части расположены такие реквизиты, как наименование организации, эмблема организации, главный диспетчер, так как эти реквизиты относятся ко всему документу.
Система Управления Базами Данных
К предметным строкам документа относятся в данном случае реквизиты номер рейса, дата отправления, пункт назначения, номер автобуса, количество мест, свободные места. К заверительной части документа относится реквизит - начальник смены. К реквизитам, предназначенным для улучшения читабельности документа, относится реквизит Сведения о свободных местах на рейс на год 14: 00 часов и Итого, но эти реквизиты не подлежит вводу в базу данных. УТВЕРЖДАЮ Главный диспетчер Петров А. СВЕДЕНИЯ О СВОБОДНЫХ МЕСТАХ НА РЕЙС НА, 14: 00 № Номер рейса Дата отправления Пункт назначения Номер автобуса Количество мест Свободные места 1 153 Экибастуз 011 32 2 2 149 Омск 142 52 4 3 241 Аксу 101 48 3 4 111 Томск 098 20 0 5 100 Семей 055 34 1 ИТОГО: количество мест 186 продано мест 176 свободно мест 10 Начальник смены Аналогично следует разработать второй выходной документ, который будет выглядеть следующим образом: УТВЕРЖДАЮ Главный диспетчер Петров А.
СВЕДЕНИЯ О ПРОДАЖЕ БИЛЕТОВ НА, 14: 00 № Номер рейса Количество мест Проданные места Стоимость билета 1 153 32 30 400 2 149 3 241 48 45 350 4 111 5 100 34 33 700 ИТОГО: количество мест 186 продано мест 176 свободно мест 10 Начальник смены На следующем этапе следует продумать структуру экономических показателей путем расчленения всех сведений на показатели, а потом объединить реквизиты родственных показателей по принципу 'В одно отношение включается группа экономических показателей с одинаковым составом реквизитов-признаков'. Такой подход позволяет создать структуру базы данных с минимальной избыточностью.
Основная задача проектирования базы данных - это определение количества файлов и их реквизитного состава. Реквизит - это совокупность значений некоторого фиксированного набора переменных. Различают реквизиты-признаки и реквизиты-основания.
Реквизит-признак - это информационное отображение качественного свойства некоторого объекта. Реквизит-основание - это информационное отображение количественного свойства некоторого объекта. В состав экономического показателя должны входить один реквизит-основание и несколько реквизитов-признаков, однозначно характеризующих условие существования основания. Для определения признаков и оснований я пользовалась следующими правилами: 1. Если значение реквизита является исходным данным или результатом арифметической операции, то это основание; 2.
Если реквизит текстовый, то это признак; 3. Если реквизит обозначает предмет или время - это признак; 4.
Если реквизит в некотором показателе является признаком (основанием), то он будет играть эту же роль в других показателях; 5. Если показатели описывают сходные процессы, то их призначные части совпадают; 6. Если основание показателя вычисляется по значениям других оснований, то набор признаков такого показателя - это объединение признаков, связанных с этими основаниями. К реквизитам основаниям относятся: стоимость билета, количество мест, проданные места.
К реквизитам признакам относятся: время в пути, пункт отправления, пункт назначения, дата отправления, ФИО водителя, сменный водитель, основной водитель, номер автобуса, номер водителя, номер билета, номер рейса. Можно сделать вывод, что в документах приложения базы данных 'Автостанция' будет 3 показателя. Подберем реквизиты-признаки для каждого основания и получим показатели. У основания Стоимость билета необходимыми признаками будут номер билета (для определения рейса), номер рейса, время в пути (для определения пункта назначения). В результате структура показателя П1 примет вид: П1 ( номер билета, номер рейса, время в пути, стоимость билета). У основания Количество мест необходимыми признаками будут номер рейса, номер автобуса, пункт отправления, пункт назначения, дата отправления.
В результате структура показателя П2 примет вид: П2 ( номер рейса, номер автобуса, пункт отправления, пункт назначения, дата отправления, количество мест). У основания Проданные места необходимыми признаками будут номер рейса, номер автобуса, номер водителя, ФИО водителя, сменный водитель, основной водитель. В результате структура показателя П3 примет вид: П3 ( номер рейса, номер автобуса, номер водителя, ФИО водителя, сменный водитель, основной водитель, проданные места). Показатель является минимальной группой реквизитов, сохраняющей информативность (осмысленность), и поэтому достаточной для образования документа. Но с другой стороны представление экономической информации в форме показателей не является универсальным, так как имеются значительные массивы осмысленной информации, не содержащие реквизитов оснований. Методом, решающим этот недостаток является построение модели данных. Модель данных - это совокупность трех составляющих: множество информационных конструкций, допускаемых этой моделью; множество допустимых операций над данными; множество ограничений, наложенных на информационные конструкции.
Иными словами модель данных - это инструмент для представления данных в базе данных. В целях обеспечения наиболее естественных для человека способов сбора и представления той информации, которую предполагается хранить в создаваемой базе данных построим модель, называемую 'сущность-связь'.
Эту модель данных пытаются строить по аналогии с естественным языком (последний не может быть использован в чистом виде из-за сложности компьютерной обработки текстов и неоднозначности любого естественного языка). Основными конструктивными элементами таких моделей являются сущности, связи между ними и их свойства (атрибуты). Сущность - любой различимый объект (объект, который мы можем отличить от другого), информацию о котором необходимо хранить в базе данных. В проектируемой базе данных сущностями будут являться: РЕЙС, БИЛЕТ, АВТОБУС, ВОДИТЕЛЬ. Необходимо различать такие понятия, как тип сущности и экземпляр сущности. Понятие тип сущности относится к набору однородных личностей, предметов, событий или идей, выступающих как целое.
Экземпляр сущности относится к конкретной вещи в наборе. Например, типом сущности может быть ВОДИТЕЛЬ, а экземпляром - Иванов, Петров и т.д. Атрибут - поименованная характеристика сущности. Примерами атрибутов для сущности БИЛЕТ будут номер билета, стоимость и т.д. Ключ - минимальный набор атрибутов, по значениям которых можно однозначно найти требуемый экземпляр сущности. К примеру в сущности РЕЙС исключение из атрибутов такого как ID рейса не позволит однозначно определить рейс, поэтому ключом сущности РЕЙС является атрибут - ID рейса. Связь - ассоциирование двух или более сущностей.
Энергия и температура Солнца 129 2. Солнце — ближайшая звезда 129 1. Учебник астрономии 11 класс pdf. Солнце и звёзды 129 § 21.
Для выявления связей между сущностями необходимо, как минимум, определить сами сущности и их атрибутный состав. Построим модель 'сущность-связь': 1 1 ∞ ∞ ∞ ∞ ∞ 1 1 1 Центральная задача проектирования базы данных - это определение количества отношений и их атрибутного состава. Задача группировки атрибутов в отношении допускает множество вариантов решения.
Рациональный вариант предполагает: 1. Множество отношений должно обеспечить минимальную избыточность представления информации; 2. Корректировка отношений не должна приводить к двусмысленности и потере информации; 3. Перестройка набора отношений при добавлении в базу данных новых атрибутов должна быть минимальной. Переход от модели 'Сущность-связь' к реляционной модели данных осуществим через нормализацию.
Нормализация - это способ преобразования отношений, позволяющий улучшить характеристики базы данных по перечисленным критериям. В реляционной модели данных информационной конструкцией является отношение (таблица); операциями - проекция, выборка и соединение; ограничением - функциональная зависимость. По определению, в отношении R (A,B) реквизит А функционально определяет реквизит В, если в любой момент времени каждому значению А соответствует единственное значение В. На первом шаге алгоритма приведения отношений к третьей нормальной форме, составим все функциональные зависимости рассматриваемой предметной области: 1. Номер рейса - пункт отправления 2. Номер рейса - пункт назначения 3.
Номер рейса - дата отправления 4. Номер рейса - номер автобуса 5. Номер автобуса - пункт отправления 6. Номер автобуса - пункт назначения 7.
Номер автобуса - количество мест 8. Номер водителя - ФИО водителя 9. Номер водителя - смена 10. Номер билета - номер рейса 11. Номер билета - стоимость 12.
Номер рейса, дата отправления - номер водителя 13. Номер рейса, дата отправления - проданные места 14. Номер рейса, номер автобуса - время в пути. На шаге 2 воспользуемся двумя теоремами: 1) теорема 2 - реквизит А определяет реквизит В и реквизит А определяет реквизит С только тогда, когда А определяет В и С вместе; 2) теорема 3 - если реквизит А определяет реквизит В и реквизит В определяет реквизит С, то реквизит А определяет реквизит С. В результате получим 6 функциональных зависимостей: 1.
Номер рейса - пункт отправления, пункт назначения, дата отправления, номер автобуса 2. Номер рейса, дата отправления - номер водителя, проданные места 3. Номер рейса, номер автобуса - время в пути 4. Номер автобуса - пункт отправления, пункт назначения, количество мест 5. Номер водителя - ФИО водителя, смена 6. Номер билета - номер рейса, стоимость. В этих функциональных зависимостях отсутствуют неполные и транзитивные функциональные зависимости.
На третьем шаге определим первичный ключ отношений. В данном случае первичным ключом будут те реквизиты, которые не встречаются в правых частях. В данном примере первичным ключом является номер билета. Для каждой функциональной зависимости создадим проекцию исходного отношения: 1.
T=R1 номер рейса, номер водителя, номер автобуса, пункт отправления, пункт назначения, дата отправления, проданные места, время в пути 2. T=R2 номер билета, номер рейса, стоимость 3. T=R3 номер автобуса, пункт отправления, пункт назначения, количество мест 4. T=R4 номер водителя, ФИО водителя, смена. Таким образом, переход к третьей нормальной форме привел в данном примере к четырем отношениям. Для составления запросов, указанных в задании воспользуемся средством реляционной алгебры - операцией выборки.
Выдать информацию о наличии свободного билета на рейс. Этот запрос относится к Запрос будет выглядеть так: Вход запроса: Выход запроса: Оболочка запроса: 2. Вывести список рейсов в один и тот же город с указанием времени пути и стоимости билета. Этот запрос относится к Запрос будет выглядеть так: Вход запроса: Выход запроса: Оболочка запроса: 2. Проектная часть В проектной части необходимо выполнить следующие этапы: 1. Проектирование базы данных (определение состава полей её таблиц и связей между ними). Создание базы данных.
Программирование выполнения операций над данными. 2.1 Проектирование базы данных После анализа особенностей автоматизируемой области деятельности следует приступить к, возможно, самому важному этапу - проектированию будущей БД, которое заключается в определении состава полей её таблиц и связей между ними. От того, насколько тщательно проведен анализ и насколько грамотно спроектирована БД, в существеннейшей мере зависит эффективность будущего приложения БД и его полезность для пользователя. В проектируемой базе данных должно быть 4 таблицы (исходя из полученных четырех отношений в 3НФ). В таблице Avtobys разместим полные сведения о каждом автобусе.
Таблица Voditel предназначена для хранения сведений о водителях - то есть: номер водителя, ФИО водителя и его смена. В таблице Bilet содержится информация о билетах с указанием номера рейса и стоимости. В таблице Reis - будут храниться все необходимые сведения о рейсе - с указанием номера, даты отправления, пункта отправления и назначения, номера автобуса, номера водителя, времени в пути. Таким образом, таблица Reis должна иметь уникальное поле, которое будет определять каждый рейс, можно в качестве уникального взять поле номер рейса. Позже следует создать ключ по этому полю, чтобы база данных могла быстро найти этот рейс.