Распределение газет

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    4,47 Мб
  • Опубликовано:
    2015-05-31
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Распределение газет

Министерство образования и науки Российской Федерации

Федеральное государственное автономное образовательное учреждение высшего профессионального образования

«Уральский федеральный университет имени первого Президента России Б.Н. Ельцина»

Кафедра Интеллектуальных информационных технологий






Курсовая работа по информатике

Распределение газет




Ст. преподаватель Е.В.Гончарова

Студент И.Д.Тарасов

группы СТ-140031д






2015г.

Задание к курсовой


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

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

Введение


Цели курсовой работы:

ü  обобщить и систематизировать знания, умения и навыки проектирования баз данных;

ü  закрепить навыки оформления документации.

Задачи курсовой работы:

ü  изучить справочную литературу по заданной теме;

ü  сформулировать цель проектирования базы данных;

ü  построить концептуальную модель;

ü  построить реляционную модель и выполнить её нормализацию;

ü  реализовать запросы, которые удовлетворяют требованиям базы данных;

ü  оценить базу данных с точки зрения возможностей её дальнейшего развития;

ü  оформить пояснительную записку к курсовой работе.

Описание предметной области


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

 

Постановка задачи


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

база данные таблица запрос

Концептуальная модель базы данных


При разработке ER-моделей я получил следующую информацию о предметной области:

список сущностей предметной области;

список атрибутов сущностей;

описание взаимосвязей между сущностями.

После анализа предметной области я выделил четыре сущности: «Типография», «Газета», «Почтовое отделение», «Редакция». Следующим шагом определим атрибуты всех сущностей и выделим ключевые атрибуты (таблица 1).

Таблица 1. Список атрибутов

Газета

Типография

Почтовое отделение

Распределение

Редакция

Название

Название

Номер

Цена

ФИО редактора

Индекс издания

Адрес

Адрес

Тираж

 


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

Таблица 2. Список атрибутов с ограничениями

Атрибут

Ограничение

Повторяемость

Обязательность

Значение по умолчанию

Название газеты


-

+

нет

Индекс издания


-

+

нет

Ф.И.О. редактора


+

+

нет

Цена газеты

1

+

+

нет

Название типографии


+

+

Адрес типографии


+

+

нет

Номер почтового отделения


+

+

нет

Адрес почтового отделения


+

+

нет


1.      Цена газеты ≥10;

Определим типы связей и построим начальную ER-модель данных (Рис. 1)

Газеты

 

Почтовое отделение

 

Распределение



Редакция


Типография



Рис. 1. ER-модель данных

Преобразование концептуальной модели в схему функциональных зависимостей отношения (схема 1)

Схема 1. Схема функциональных зависимостей отношения

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

Создание таблиц


Таблица 3. Газета

Газеты

Тип данных

КодГ

Счетчик

Название

Текст

Индекс издания

Число

КодР

Текст


Таблица 4. Редакция

Редакция

Тип данных

КодР

Счетчик

Ф.И.О редактора

Текст


Таблица 5. Типография

Типография

Тип данных

КодТ

Счетчик

Название

Текст

Адрес

Число


Таблица 6. Распределение

Распределение

Тип данных

КодГ

Счетчик

КодТ

Счетчик

Код ПО

Счетчик

Тираж

Число

Цена

Число


Таблица 7. Почтовое отделение

Почтовое отделение

Тип данных

КодПО

Счетчик

Номер

Адрес

Число


Каждой таблице назначим ключевое поле.

Рис. 2

Рис.3

Аналогично для поля «Адрес», только в поле «Размер поля» ввести значение 60.

Рис.4

Рис. 5

Рис. 6

Рис. 7

Рис. 8

Аналогично для поля Код Р.

Рис. 9

Рис. 10

Рис. 11

Рис.12

Рис. 13

Аналогично заполняются поля «КодТ», «КодПо», «тираж».

Рис. 14

 

Подстановка

Сделаем подстановку (рис. 15, 16)

Рис. 15

Рис. 16

Также делается подстановка в таблице «Распределение», для полей «КодГ», «КодТ» и «КодПО».

Создание связей


Рис.17

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

Создадим связи между таблицами, выполнив команду: вкладка ленты

Работа с базами данных - Схема данных. (рис. 18)

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

Заполнение таблиц

Теперь переходим к заполнению таблиц

Рис. 19. Данные таблицы «Редакция»

Рис. 20 Данные таблицы «Типография»

Рис. 21 Данные таблицы «Газеты»

Рис. 22 Данные таблицы «Почтовое отделение»

Рис.23 Данные таблица «Распределение»

Создание запросов

Обычный запрос

Создадим запрос на выборку, используя мастер запросов. Вкладка ленты Создание - Мастер запросов - Простой запрос. Из списка выберем поля «Название» из таблицы «Газеты», «цена», «тираж», «КодТ», «КодПо» из таблицы «Распределение» (рис. 24, 25)

Рис. 24 Бланк запроса в режиме конструктора

Рис. 25 Запрос в режиме данных

Запрос с групповой операцией

Например, в базе данных «Газеты» найти газеты Комсомольская Правда и Аргументы и Факты с максимальной ценой.

Порядок задания тот же, что и при создании обычного запроса; только в бланк запроса, то есть в режиме конструктора запроса, вставляется строка «Групповая операция» с помощью команды «Конструктор / Показать или скрыть / Итоги» и из раскрывающегося списка выбирается итоговая операция в каждом выбранном поле (рис. 26, 27).

Рис. 26 Запрос с групповой операцией в режиме конструктора

Рис. 27 Максимальная цена газет АиФ и КП

Параметрический запрос

Например, условие задачи - для любой указанной газеты найти КодР, индекс издания, цену, КодТ, КодПо, то есть при каждом открытии запроса задавать новое значение условия (параметр).

. В строке «Условие отбора» бланка запроса введем открывающую и закрывающую квадратные скобки, внутри которых записать любую подходящую фразу.

. Выполним команду «Конструктор / Показать или скрыть / Параметры».

. В окне «Параметры запроса» в ячейке столбца «Тип данных» выберем тип данных параметра, который должен совпадать с типом данных поля таблицы, в котором и будет осуществляться поиск, ОК.

. После сохранения запроса, при его открытии появится окно «Введем значение параметра», в котором название строки для ввода совпадает с фразой, записанной в качестве условия в режиме конструктора запроса. Введем необходимое значение, ОК.

Рис. 28 Параметрический запрос в режиме конструктора

Рис. 29. Тип данных параметра

Рис. 30 Ввод значения параметра

Рис. 31 Параметрический запрос в режиме данных

Запрос с вычисляемым полем

В базе данных «Газеты» определить, сколько стоит 15 экземпляров газеты «Новая».

Создадим вычисляемое поле в режиме конструктора обычного запроса:

− контекстная команда «Построить», выполненная в свободной ячейке «Поле» в нижней половине окна;

− двойной щелчок по папке «Таблицы»;

− щелчок по таблице «Распределение»;

− щелчок по полю «Цена» в средней части нижней половины окна «Построитель выражений», затем по кнопке «Вставить»;

− введем оператор умножения *, затем значение 10,09 ОК;

− заменить имя по умолчанию «Выражение 1» вычисляемого поля на имя «Сумма» (рис. 32, 33, 34).

Рис. 32 Вычисляемое поле в построителе выражений

Рис. 33 Запрос с вычисляемым полем в режиме конструктора

Рис. 34 Запрос с вычисляемым полем в режиме данных

Перекрестный запрос

Например, требуется найти, в какой типографии печатается газета «Хроника», указать тираж и почтовое отделение, в которое поступает газета.

. Создадим обычный запрос, выбрать таблицы «Газеты» и «Распределение», в режиме конструктора выполним команду 2007 «Конструктор / Тип запроса / перекрестный».

. Выберем поля: «КодТ», «КодПо», «тираж», «Название».

. Выберем значения в строках «Перекрестная таблица» и «Групповая операция» и введем условие (рис. 35, 36).

Рис. 35 Перекрестный запрос в режиме конструктора

Рис. 36 Перекрестный запрос в режиме данных

Запрос-действие

Например, на газету «Толкучка» введены новые цены на 5 % выше действующих цен. Необходимо изменить эти данные в базе «Газеты».

. Для определения исходных цен создадим обычный запрос-выборку, сохранить под именем Толкучка. Откроем его и проверим цены.

. Скопируем запрос Толкучка в буфер обмена, вставим под именем Толкучка105, открыть копию в режиме конструктора.

. Выполним команду «Конструктор / Тип запроса / Обновление», с помощью построителя выражения заполним строку «Обновление», сохраним.

. Откроем запрос-обновление Толкучка105, подтвердим обновление («Да», «Да»).

. Откроем запрос Толкучка и снова проверим цены (рис. 37, 38, 39, 40).

Рис. 37 Запрос-выборка Толкучка в режиме конструктора

Рис. 38 Запрос-выборка Толкучка в режиме данных

Рис. 39 Запрос-выборка Толкучка 105 в режиме конструктора

Рис. 40 Запрос-выборка Толкучка после изменения данных

Создание отчетов

Например, требуется создать выходной документ с данными о газетах.

Создадим обычный запрос Газеты

Выполним команду «Создание / Отчеты / Мастер отчетов».

В списке «Таблицы и запросы» окна мастера отчетов выбрать «Запрос: отчет».

Стиль отчета официальный. (рис. 41, 42, 43)

В некоторых случаях вид сформированного отчета требует дополнительного форматирования.

Рис. 41 Запрос для отчета в режиме конструктора

Рис. 42 Запрос для отчета в режиме данных

Рис. 43 Отчет «Газеты»

Публикация отчета

Существует возможность публикации отчета в MS Word и дальнейшее его форматирование средствами текстового процессора.

На панели инструментов открыть список кнопки «Внешние данные / Экспорт / Word».

Сохраняем в своей рабочей папке с именем «Газеты».

Открываем файл Газеты, выделить все строки, кроме первой с заголовком «Заказ №1» и последней с итогом. 4.5. Выполнить команду «Вставка / Таблицы / Таблица / Преобразовать в таблицу».

Редактируем полученную таблицу.

Рис. 44 Опубликованный отчет

Создание форм

Простая форма

Для создания с помощью мастера форм простой формы, например для ввода данных в таблицу «Распределение», необходимо выполнить следующие действия:

. Щелчок по элементу «Формы» в области «Объекты» окна базы данных.

. Двойной щелчок по «Создание / Формы / Другие формы / Мастер форм».

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

. Щелчок по кнопке с двумя знаками больше, щелчок по «Далее».

. Выбираем стиль «Официальный», «Далее».

. Вводим имя формы «Ввод в распределение», «Готово».

Рис. 45 Форма для ввода данных

 

Раздельная форма

1. Щелчок по значку таблицы «Распределение» в области переходов.

. Выполним команду «Создание / Формы / Разделенная форма».

Рис. 46 Раздельная форма для ввода данных

 

Создание кнопочной формы

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

1. Щелчок по элементу «Формы» в области «Объекты» окна базы данных.

. Двойной щелчок по «Создание / Формы / Конструктор форм».

. На панели инструментов выберем «Элементы управления/ Кнопка».

. В колонке «Категории» выбираем «Работа с формой». В колонке «Действия» выбираем «Открыть форму». Нажимаем далее, выбираем слово текст, пишем «Вход в Распределение», нажимаем далее, имя кнопки «Вход в Распределение». Точно также создаются кнопки «Распределение» для формы «Распределение». Для кнопки «Выход», для закрытия формы «Элементы управления», все идентично, только в колонке «Действия» выбираем «Закрыть форму». Также нужно создать кнопки «Выйти» в самих формах, которые позволят возвращаться на главную форму.

Рис. 47 форма «Элементы управления»

Рис. 48 Кнопка «Выйти в форме «Ввод в Распределение»

Рис. 49 Кнопка «Выйти в форме «Распределение»

Заключение


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

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

Список литературы


1.     Е.М. Потылицына «Проектирование баз данных»/ Екатеринбург 2011/ 46 стр.

2.      Н.И. Тебайкина «Информационные системы в строительстве»/ Екатеринбург 2009/ Редакционно-издательский отдел УГТУ-УПИ/ 144 стр.

Похожие работы на - Распределение газет

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!