Проектирование базы данных «ПОЛИТИЧЕСКАЯ ПАРТИЯ»

Автор работы: Пользователь скрыл имя, 18 Ноября 2013 в 18:16, курсовая работа

Краткое описание

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

Содержание

ВВЕДЕНИЕ………………………………………………………………………………………….5
1 СЛОВАРЬ ДАННЫХ 6
1.1 Понятие о словаре данных 6
1.2 Стратегия реализации словаря данных 6
1.3 Условия применения 7
1.4 Рекомендации по определению данных 8
2 ПРОЕКТИРОВАНИЕ БАЗЫ ДАННЫХ «ПОЛИТИЧЕСКАЯ ПАРТИЯ» 10
2.1. Анализ предметной области и составление спецификаций данных 10
2.2. Концептуально-логическая модель базы данных «Политическая партия» 11
2.3. Физическая модель базы данных «Политическая партия» 12
3 РАЗРАБОТКА ПРИЛОЖЕНИЯ ПО РАБОТЕ С БАЗОЙ ДАННЫХ……………………..14
3.1. Разработка запросов 14
3.2. Создание формы 19
3.3 Создание отчета 20
ЗАКЛЮЧЕНИЕ…………………………………

Прикрепленные файлы: 1 файл

Курсовая.docx

— 5.44 Мб (Скачать документ)

Основные атрибуты для  партийца:

  1. Код партийца
  2. Фамилия
  3. Имя
  4. Отчество
  5. Название партии
  6. Дата вступления
  7. Дата рождения
  8. Адрес
  9. Телефон
  10. Место работы

Основные атрибуты для  взносов:

  1.       Год
  2.      Сумма

Теперь изучим бланк 2 (Приложение А). Из него можно выделить один объект, по которому и создадим таблицу. Получаем, что разрабатываемая база данных будет содержать информацию об имуществе, которым владеет партия.

Основные атрибуты для  имущества:

  1. Название партии
  2. Код имущества
  3. Наименование имущества
  4. Количество

2.2 Концептуально-логическая модель базы данных «Политическая партия»

 

Проанализируем все связи между таблицами. Известно, что в партии числится несколько партийцев, а человек может вступить только в одну политическую партию. Получаем связь «один ко многим» между таблицей Партия и Партиец по полю «название партии». Далее известно, что у партии может быть много имущества, но одно и то же имущество не может принадлежать нескольким партиям. Получаем связь «один ко многим» между таблицей Партия и Имущество по полю «название партии». Устанавливаем связь между таблицами Партиец и Взносы через таблицу Оплата. Так как партиец ежегодно выплачивает взносы, получаем связь «один ко многим» между таблицей Партиец и Оплата по полю «код партийца», а так же связь «один ко многим» между таблицей Взносы и Оплата по полю «год» (рисунок 1).

 

 

Рисунок 1 – Схема данных

 

2.3 Физическая модель базы данных «Политическая партия»

 

 В системе управления  базами данных Microsoft Access были созданы следующие таблицы: Имущество, Партия, Партиец, Оплата и Взносы (таблицы 2.1 – 2.5).

 

Таблица 2.1 Структура таблицы Партия

 

Ключевое поле

Имя поля

Тип данных

Размер поля

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

Да

Название партии

Текстовый

255

нет

 

Сокращенное название партии

Текстовый

255

нет

 

Дата регистрации

Дата/время

 

нет

 

Девиз партии

Текстовый

255

нет

 

Председатель

Текстовый

255

нет

 

Адрес партии

Текстовый

255

нет

 

Телефон партии

Числовой

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

нет


 

Таблица 2.1 Структура таблицы  Имущество

 

Ключевое поле

Имя поля

Тип данных

Размер поля

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

 

Название партии

Текстовый

255

нет

Да

Код имущества

Числовой

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

нет

 

Наименование имущества

Текстовый

255

нет

 

Количество

Числовой

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

нет


 

Таблица 2.3 Структура таблицы Партиец

 

Ключевое поле

Имя поля

Тип данных

Размер поля

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


 

Продолжение таблицы 2.3

Да

Код партийца

Счетчик

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

 
 

Фамилия

Текстовый

255

нет

 

Имя

Текстовый

255

нет

 

Отчество

Текстовый

255

нет

 

Название партии

Текстовый

255

нет

 

Дата вступления

Дата/время

 

нет

 

Дата рождения

Дата/время

 

нет

 

Адрес

Текстовый

255

нет

 

Телефон

Числовой

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

нет

 

Место работы

Текстовый

255

нет


 

Таблица 2.4 Структура таблицы Взносы

 

Ключевое поле

Имя поля

Тип данных

Размер поля

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

Да

Год

Числовой

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

нет

 

Сумма

Денежный

 

нет


 

Таблица 2.5Структура таблицы Оплата

 

Ключевое поле

Имя поля

Тип данных

Размер поля

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

Да

Код оплаты

Счетчик

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

 
 

Код партийца

Числовой

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

 
 

Год

Числовой

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

 
 

Сумма

Денежный

 

нет


 

3 РАЗРАБОТКА  ПРИЛОЖЕНИЯ  ПО  РАБОТЕ  С  БАЗОЙ ДАННЫХ

 

3.1 Разработка запросов

 

Создали нескольких запросов, имеющих практическое значение для базы данных «Политическая партия»:

  1. Необходимо показать партийцев, которые не выплатили полностью взнос за 2008 год. Для выполнения данного задания, был выбран запрос на выборку с группировкой данных, основанный на таблицах Партиец и Оплата. Группируем партийцев по фамилии и году взноса из таблиц Партиец и Оплата соответственно. В поле Год в разделе «условие отбора» указываем 2008 год. В поле Сумма в разделе «групповая операция» указываем функцию Sum (сумма), а в разделе «условие отбора» задаем условие <2008 года. Запрос в режиме конструктора и результат его выполнения можно увидеть на рисунке 3.1;

 

 

 

Рисунок 3.1 – Создание запроса

 

  1.  Необходимо показать какую сумму выплатил каждый партиец начиная с даты регистрации партии и за сколько раз он выплачивал необходимый взнос. Для выполнения данного запроса, был выбран запрос с групповыми операциями, основанный на таблицах Партиец и Оплата. Группируем партийцев по фамилии и году взноса из таблиц Партиец и Оплата соответственно, причем фамилию выводим с инициалами. Для этого, выделив раздел Поле, нажимаем на построитель выражения и вводим следующую формулу: [Фамилия] & " " & Left([Имя];1) & "." & Left([Отчество];1) & ".". Затем в полях Сумма в разделе «групповая операция» указываем функции Sum (сумма) и Count (количество). Запрос в режиме конструктора и результат его выполнения можно увидеть на рисунке 3.2;

 

 

Рисунок 3.2 – Запрос с вычисляемыми полями

 

  1.  Необходимо создать запрос, который будет показывать партийцев, который родились в один и тот же год. Для выполнения данного запроса, был выбран запрос с параметром, основанный на таблице Партиец. Для этого в поле Дата рождения в разделе «условие отбора» указываем функцию для ввода параметра (“[Введите год рождения]”). Поле Дата рождения можно скрыть. Запрос в режиме конструктора и результат его выполнения можно увидеть на рисунке 3.3;

 

 

 

Рисунок 3.3 – Создание запроса с условием отбора

 

 

  1.  В случае повышения суммы взноса в 2011г. на 10%. Для выполнения данного запроса, был выбран запрос на обновление. Добавили таблицу Оплата. В поле Год в разделе «условие отбора» указываем 2011 год. Затем меняем тип запроса на «Обновление». В поле Сумма в разделе «обновление» вводим следующее выражение: [Сумма]*110. Запрос в режиме конструктора и результат его выполнения можно увидеть на рисунке 3.4;

 

             .

 

Рисунок 3.4 – Создание запроса на обновление

 

  1.  Необходимо создать запрос, который будет показывать сколько партийцу исполнилось лет на данный момент, для этого выбираем вопрос с группировкой. Добавляем таблицу Партиец. Добавляем поля Фамилия и Дата рождения. В поле Дата рождения с помощью построителя выражения вводим следующую формулу: Year(Now())-Year([Партиец]![Дата рождения]). Запрос в режиме конструктора и результат его выполнения можно увидеть на рисунке 3.5;

 

                         

 

Рисунок 3.5 – Создание запроса с вычислением возраста партийцев

 

  1.  Чтобы выяснить, какую сумму партиец выплатил за 2008 и за 2009 года, используем перекрестный запрос. Для данного запроса использовались таблицы Партия, Партиец и Оплата. В поле Год в разделе «условие отбора» занесли условие «2008 Or 2009», затем изменили тип запроса на «Перекрестный». В поле Сумма в разделе «групповая операция» выбрали функцию Sum, а в разделе «перекрестная таблица» выбираем фразу «значение». В полях Сокращенное название партии и Фамилия в разделе «перекрестная таблица» выбираем фразу «заголовки строк», а в поле Год - «заголовки столбцов». Запрос в режиме конструктора и результат его выполнения можно увидеть на рисунке 3.6;

 

 

 

Рисунок 3.6 – Создание звапроса о сумме выплаченных взносов за искомые периоды

 

  1.  Чтобы выяснить, общую сумму взносов за 2007-2011 года, используем запрос на создание новой таблицы. Для данного запроса используем таблицу Оплата. В поле Сумма в разделе «групповая операция» используем функцию Sum, после чего нажмем на кнопку «создание таблицы». В появившемся диалоговом окне вводим название новой таблицы и сохраняем. Запрос в режиме конструктора и результат его выполнения можно увидеть на рисунке 3.7;

 

      

 

Рисунок 3.7  – Создание запроса по подсчету общей суммы выплаченных взносов за интересуемый период

  1. Предположим, у партийцев, у которых номер телефона начинался на «4» теперь перед набором нужно добавлять спереди цифру «6». Для этого создадим запрос на обновление в режиме конструктора. Добавим таблицу Партиец, после чего добавим в бланк запроса поле Телефон и зададим для него условие «Like "4*"». Изменяем тип запроса на «Обновление». В строке «Обновление» пишем выражение: "64" & Mid([Телефон];2;6). Запрос в режиме конструктора и результат его выполнения можно увидеть на рисунке 3.8;

 

 

 

Рисунок 3.8 - Создание запроса с корректировкой данных

Информация о работе Проектирование базы данных «ПОЛИТИЧЕСКАЯ ПАРТИЯ»