close

Вход

Забыли?

вход по аккаунту

?

Курсовая (4)

код для вставкиСкачать
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РЕСПУБЛИКИ КАЗАХСТАН
МЕЖДУНАРОДНАЯ АКАДЕМИЯ БИЗНЕСА
Курсовая работа
по дисциплине "Базы данных"
База данных "Видеотека"
1.1.1.1 Исполнитель: Руководитель: доцент кафедры Алматы 2010
Содержание
Введение
1. Задание на проектирование базы данных
2. Этапы проектирования БД
2.1 Описание предметной области
2.2 Анализ информационных потоков
2.3. Создание инфологической модели
2.4. Создание даталогической модели
2.5 Выбор технических и программных средств реализации БД
3. Создание базы данных
3.1 Описание структуры проекта БД 3.2. Описание свойств таблиц БД
3.3 Определение отношений между таблицами БД и условий целостности данных
4. Ведение базы данных
4.1. Пользовательское меню
4.2. Формы как средство добавления, удаления, просмотра, изменений параметров базы данных
4.3 Формирование запросов к базе данных
4.4. Формирование отчетов
Заключение
Литература
Приложения А
Приложения Б
Введение
В настоящее время среди разработчиков базы данных (БД) большой популярностью пользуется реляционная СУБД ACCESS, входящая в состав пакета Microsoft Office 2003. Дружественный интерфейс и простота настройки, эффективные средства создания таблиц, форм, запросов, интеграция с другими приложениями пакета, средства организации работы с базами данных и защита информации - вот далеко не полный перечень достоинств этого приложения.
Основные функции СУБД - это описание структуры базы данных, обработка данных и управление данными.
В данном курсовом проекте в качестве предметной области рассматривается домашняя видеотека. В видеотеке хранится огромное количество дисков, услугами видеотеки пользуются довольно много людей. Для обеспечения оперативности ведения информации о дисках и клиентах необходима автоматизированная система, основанная на современной базе данных. Использование базы данных и автоматизированной системы для работы с базой данных существенно сократит время обслуживания клиентов и время работы с видеотекой по систематизации информации о дисках, по сбору информации о должниках и многие другие задачи.
В видеотеке необходимо хранить разнообразную информацию о дисках, чтобы оперативно можно было определить информацию о наличии в видеотеке некоторого диска, дисков по определенному жанру, или определенного режиссера. Необходимо учесть, что диски одного режиссера могут иметь одинаковое название, поэтому дискам нужно присваивать некоторые уникальные шифры. Информация о клиентах должна быть полной и достаточной для определения клиента, фамилия, имя, его место жительство и т.д. Необходимо учесть, что среди клиентов могут быть однофамильцы, поэтому у каждого клиента должен быть уникальный шифр, в данном случае в качестве шифра используется идентификационный номер (ID номер) клиента.
Работать с базой данных "Видеотека" будут следующие пользователи:
- администратор видеотеки;
- клиенты видеотеки.
Администратор должен иметь возможность добавлять новые диски и списывать старые, вести учет выдачи и возврата дисков, записывать нового клиента и удалять клиентов которые уже не пользуются услугами видеотеки. Клиент должен иметь возможность просматривать каталог дисков по алфавиту, по жанру и получать информацию о наличие диска и возможности его получения.
Проанализировав предметную область, мы можем сказать, что разработка базы данных для видеотеки актуальна. Целью разработки базы данных "Видеотека" и автоматизированной системы для работы с ней является повышение качества обслуживания клиентов и улучшение коллекции дисков видеотеки. Эти цели могут быть достигнуты за счет сокращения времени поиска дисков администратором и клиентами, за счет снижения времени поиска информации о клиентах, клиентах-должниках. Задачами автоматизированной системы являются:
1. Добавление клиента
2. Удаление клиента
3. Поиск и выдача дисков клиентам 4. Возврат диска клиентом
5. Систематизация дисков
6. Подготовка списка всех дисков имеющихся в видеотеке 7. Подготовка сведений о клиентах, у которых имеются на руках диски 8. Подготовка сведений о каждом клиенте и т.п.
1. Задание
Разработать подсистему "Видеотека" для автоматизации учета выдачи дисков в видеотеке.
Входные данные:
- Перечень жанров фильмов; - Фильм (наименование, дата выпуска, жанр, режиссер, страна, продолжительность фильма, краткое содержание и актерский состав); - Кассета (Номер, фильм, цена); - Движение (ФИО клиента, адрес, телефон, кассета, дата, на какой срок был выдан, сумма залога, дата возврата, сумма возврата)
Запросы
1.На каких кассетах находится i-ый фильм
2.Все фильмы в названии которых есть слово
Отчеты
1.Ведомость клиентов, задержавших кассету на текущую дату
2.Приходная ведомость №1 на i-ю дату (сумма залога)
3.Приходная ведомость №2 на i-ю дату (сумма залога, сумма возврата, приход, если возврат кассеты был задержан, то штраф в размере 0,01% от цены за каждый день просрочки)
Анализ и описание предметной области
В видеотеке хранится огромное количество дисков, услугами видеотеки пользуются довольно много людей. Для обеспечения оперативности ведения информации о дисках, клиентах и о сотрудниках необходима автоматизированная система, основанная на современной базе данных. Использование базы данных и автоматизированной системы для работы с базой данных существенно сократит время обслуживания клиентов и время работы сотрудников видеотеки по систематизации информации о дисках, по сбору информации о должниках и многие другие задачи.
В видеотеке необходимо хранить разнообразную информацию о дисках, чтобы оперативно можно было определить информацию о наличии в видеотеке некоторого диска, дисков по определенному жанру, или определенного режиссера. Необходимо учесть, что диски одного режиссера могут иметь одинаковое название, поэтому дискам нужно присваивать некоторые уникальные шифры. Информация о клиентах должна быть полной и достаточной для определения категории клиента, номер паспорта, его места жительства и т.д. Необходимо учесть, что среди клиентов могут быть однофамильцы, поэтому у каждого клиента должен быть уникальный шифр, в данном случае в качестве шифра используется номер паспорта клиента.
Работать с базой данных "Видеотека" будут следующие пользователи:
- сотрудники видеотеки;
- клиенты;
- дирекция видеотеки.
Сотрудники должны иметь возможность добавлять новые диски и списывать старые, вести учет выдачи и возврата дисков, записывать нового клиента и удалять клиентов которые уже не пользуются услугами видеотеки. Клиент должен иметь возможность просматривать каталог дисков по жанру, по режиссерам и получать информацию о наличие диска и возможности его получения. Так же клиент имеет возможность сделать заказ на доставку того или иного диска.
Дирекция должна иметь возможность получать информацию о наиболее или наименее популярных дисках, о всех клиентах, о клиентах должниках, о том какими дисками необходимо пополнить видеотеку.
Цели и задачи создания базы данных "Видеотека"
Проанализировав предметную область, мы можем сказать, что разработка базы данных для видеотеки актуальна. Целью разработки базы данных "Видеотека" и автоматизированной системы для работы с ней является повышение качества обслуживания клиентов и улучшение коллекции дисков видеотеки. Эти цели могут быть достигнуты за счет сокращения времени поиска дисков сотрудниками и клиентами, за счет снижения времени поиска информации о клиентах, клиентах-должниках, об устаревших дисках, о популярных дисках. Задачами автоматизированной системы являются:
9. Добавление клиента
10. Удаление клиента
11. Добавление сотрудника
12. Удаление сотрудника
13. Поиск и выдача дисков клиентам 14. Возврат диска клиентом
15. Пополнение коллекции дисков
16. Систематизация дисков
17. Списание дисков
18. Заказ дисков клиентами
19. Удаление заказа
20. Подготовка списка всех дисков имеющихся в видеотеке 21. Подготовка сведений о каждом клиенте
22. Подготовка сведений о клиентах, у которых имеются на руках диски
23. Подготовка списка дисков на доставку в видеотеку
Проектирование базы данных
Входные и выходные данные задач
Входными данными задач являются:
анкетные данные клиента
информация о диски(режиссер, жанр, продолжительность, страна, актеры)
анкетные данные сотрудника
Информация о диске: шифр
название
режиссер
жанр
актеры
страна
продолжительность(мин)
картинка
занят(да/нет)
Информация о клиенте:
№ паспорта фамилия, имя, отчество
город улица
дом
квартира
телефон
Информация о сотруднике:
№ сотрудника № паспорта фамилия, имя, отчество
город улица
дом
квартира
телефон
Информация о прокате:
шифр проката
дата выдачи
дата возврата
№ паспорта клиента
№ сотрудника
шифр диска Информация о заказе:
шифр заказа
№ паспорта клиента
название
режиссер
жанр
актеры
год выпуска
Инфологическое проектирование базы данных
Первым этапом и самым главным этапом в процессе проектирования и создания базы данных, является разработка инфологической модели.
Цель инфологического моделирования - обеспечение наиболее естественных для человека способов сбора и представления той информации, которую предполагается хранить в создаваемой базе данных. Основными конструктивными элементами инфологических моделей являются сущности, связи между ними и их свойства (атрибуты).
Ключ - минимальный набор атрибутов, по значениям которых можно однозначно найти требуемый экземпляр сущности. Минимальность означает, что исключение из набора любого атрибута не позволяет идентифицировать сущность по оставшимся. Связь - ассоциирование двух или более сущностей. Если бы назначением базы данных было только хранение отдельных, не связанных между собой данных, то ее структура могла бы быть очень простой. Однако одно из основных требований к организации базы данных - это обеспечение возможности отыскания одних сущностей по значениям других, для чего необходимо установить между ними определенные связи. Между двумя сущностям, например, А и В возможны четыре вида связей.
Первый тип - связь ОДИН-К-ОДНОМУ (1:1): в каждый момент времени каждому представителю (экземпляру) сущности А соответствует 1 или 0 представителей сущности В:
Студент может не "заработать" стипендию, получить обычную или одну из повышенных стипендий.
Второй тип - связь ОДИН-КО-МНОГИМ (1:М): одному представителю сущности А соответствуют 0, 1 или несколько представителей сущности В.
Квартира может пустовать, в ней может жить один или несколько жильцов.
Так как между двумя сущностями возможны связи в обоих направлениях, то существует еще два типа связи МНОГИЕ-К-ОДНОМУ (М:1) и МНОГИЕ-КО-МНОГИМ (М:N). Но в нашей работе такие типы связи нам не следует употреблять. Таким образом, на этапе инфологического проектирования базы данных строится инфологическая модель предметной области, которая должна отражать семантику (смысл взаимосвязи объектов) предметной области. ИЛМ строится не для отдельного объекта, а отображает классы объектов и связи между ними. Диаграмма, отражающая связи объектов предметной области, называется диаграммой ER-типа (так как Entity - сущность, Relationship - связь).
Выделим основные сущности:
- сущность "Диски"
- сущность "Клиенты"
- сущность "Сотрудники"
- сущность "Прокат"
Инфологическая модель базы данных "Видеотека" представлена на Рис.1.
Рис.1. Инфологическая модель предметной области (ПО) "Видеотека"
Сущность "Диски" содержит информацию всех дисках, имеющимся в видеотеке. Отдельный экземпляр этой сущности содержит информацию только об одном диске. Сущность "Прокат" содержит информацию о конкретном диске, о том кто его взял, когда, когда вернет диск, какой сотрудник отдал его. Между сущностью "Диски" и сущностью "Прокат" существует связь типа "1:М". которая означает, что любой диск который находиться в прокате является обязательным по отношению к сущности "Диски" (если диск в прокате, то есть полная информация об этом диске). Сущность "Клиенты" содержит информацию о клиентах. Отдельный экземпляр этой сущности содержит информацию об одном клиенте. Существует связь между сущностью "Клиенты" и сущностью "Прокат" типа "1:М", обязательная со стороны сущности "Клиенты" (каждому экземпляру сущности "Прокат" обязательно соответствует клиент и причем только одиин). Сущность "Сотрудники" содержит информацию о всех сотрудниках работающих в видеотеке. Один экзэмпляр этой сущности содержит информацию только об одном сотруднике. Между сущностями "Сотрудники" и "Прокат" существует связь типа "1:М", которая означает что каждому экземпляру сущности "Прокат" обязательно соответствует сотрудник, оформивший данный прокат. Сущность "Заказ" содержит информацию о всех заказах поступивших от клиентов. Один экзэмпляр этой сущности содержит информацию только об одном заказе т.е. об одном заказанном диске. Между сущностями "Заказ" и "Клиенты" существует связь типа "М:1", которая означает что каждому экземпляру сущности "Заказ" обязательно соответствует клиент, сделавший данный заказ.
Определим ключи - уникальные идентификаторы экземпляров каждой сущности: для сущности "Диски" - это шифр диска (Шифр), для сущности "Прокат" - шифр проката (Ш_проката), для сущности "Клиенты" - номер паспорта (№ паспорта), для сущности "Сотрудники" - номер сотрудника (№ сотр), для сущности "Заказ" - шифр заказа (Ш_заказа).
Даталогическое (логическое) проектирование базы данных
Логическим проектированием называют проектирование логической структуры БД в среде конкретной СУБД. Выберем в качестве модели данных реляционную базу данных (РБД).
Существуют разные способы проектирования логической структуры РБД. Рассмотрим способ проектирования, основанный на анализе инфологической модели и переходе от нее к реляционным отношениям.
Для РБД проектирование логической структуры заключается в том, чтобы разбить всю информацию по отношениям, а также определить состав атрибутов для каждого из этих отношений. От ER-модели перейдем к реляционной модели данных.
В результате получили следующие отношения:
R1 "Диски" ( Шифр, Название, Режиссер, Жанр, Актеры, Страна, Прод-ть(мин), Картинка, Занят)
R2 "Клиенты" ( № паспорта, ФИО кл, Город, Улица, Дом, Квартира, Телефон)
R3 "Прокат" (Ш_проката, № паспорта, Дата выдачи, Дата возврата, № сотр)
R4 "Сотрудники" (№ сотр, № паспорта, ФИО, Город, Улица, Дом, Квартира, Телефон)
R5 "Заказ" (Ш_заказа, № паспорта, Название, Режиссер, Жанр, Актеры, Год выпуска)
Нормализация отношений
Данные отношения уже находятся в 3 НФ. Функциональные зависимости между атрибутами отношений приведены на Рис.2.
Отношение "Диски"
Шифр
Название
Режиссер
Жанр
Актеры
Страна
Прод-ть(мин)
Картинка
Занят
Отношение "Клиенты"
№ паспорта
ФИО кл
Город
Улица
Дом
Квартира
Телефон
Отношение "Прокат"
Ш_проката
№ паспорта клиент.
Дата выдачи
Дата возврата
№ сотр
Отношение "Сотрудники"
№ сотр
№ паспорта
ФИО
Город
Улица
Дом
Квартира
Телефон
Отношение "Заказ"
Ш_заказа
№ паспорта
Название
Режиссер
Жанр
Актеры
Год выпуска
Рис.2.Фнкционольные зависимости между атрибутами
Логическая модель нормализованных отношений представлена на Рис.3.
Рис 3. Логическая модель базы данных "Видеотека"
Выбор СУБД
Для физического проектирования базы данных будем использовать СУБД Microsoft Access 2003. Данная СУБД является самой распространенной и установлена практически на каждом домашнем компьютере. Access поддерживает язык запросов SQL, разнообразные формы и отчеты. В Access много средств для создания приложений, даже без знания языка программирования. Данная СУБД обеспечивает нормальное функционирование базы данных на локальном компьютере.
Реляционная база данных "Видеотека". Физическое проектирование.
Выполним физическое проектирование в среде СУБД Microsoft Access 2003. Поименуем таблицы и атрибуты, определим типы данных и размерность атрибутов. В таблицах выберем первичные ключи и индексированные поля
Таблица 1. Структура таблиц РБД "Кредитная покупка"
Название таблицыИмя поляТип данныхРазмер поляПриме-чаниеДискиШифрТекстовый10КлючРежиссерТекстовый25НазваниеТекстовый50АктерыТекстовый120СтранаТекстовый25Прод-ть(мин)ЧисловойЦелоеЖанрТекстовый20КартинкаПоле объектаЗанятЛогическийКлиенты№ паспортаЧисловойДействительноеКлючФИО клТекстовый25ГородТекстовый20УлицаТекстовый25ДомТекстовый10КвартираЧисловойЦелоеТелефонТекстовый15ПрокатШ_прокатаСчетчикДлинное целоеКлючДата выдачиДата/времяКраткий формат датыДата возвратаДата/времяКраткий формат датыШифрТекстовый10№ паспортаЧисловойДействительное№ сотрЧисловойЦелоеСотрудники№ сотрЧисловойЦелоеКлюч№ паспортаЧисловойДействительноеФИОТекстовый25ГородТекстовый20УлицаТекстовый25ДомТекстовый10КвартираЧисловойЦелоеТелефонТекстовый15ЗаказШ_закакзаСчетчикДлинное целоеКлюч№ паспортаЧисловойДействительноеНазваниеТекстовый50РежиссерТекстовый25ЖанрТекстовый20АктерыТекстовый50Год выпускаДата/времяКраткий формат даты
Связи между таблицами в базе данных "Видеотека" представлены на Рис.4
Рис.4. Связи между таблицами в базе данных
Автоматизированная информационная система на основе базы данных "Видеотека"
Запросы на выборку данных для решения поставленных задач
1) Выполним запрос на диски которые находятся на руках с выводом информации о название фильма, фамилии клиента взявшего данный диск, датой выдачи и датой возврата:
Окно конструктора запроса "Занятые" показан на Рис.5.
Рис.5.Окно конструктора запроса "Занятые"
2) Выполним запрос на свободные диски с выводом названия, шифра, режиссера, жанра, актеров, страны и продолжительности диска:
3) Выполним запрос на клиентов которые должны вернуть диски сегодня с выводом фамилии, № паспорта, дате выдачи и дате возврата:
4) Выполним запрос на клиентов которые должны вернуть диски в заданный день с выводом фамилии, № паспорта, даты выдачи, даты возврата и количеством дисков которое должен вернуть каждый клиент:
Результат:
Текст SQL запроса для запроса "Кто сколько дисков вернет в заданный день" показан на Рис.6.
Рис.6. Текст SQL запроса для запроса "Кто сколько дисков вернет в заданный день"
5) Выполним запрос на клиентов которым выдали диски в заданный день с указанием количества выданных дисков каждому клиенту:
Результат:
6) Выполним запрос на вывод заказанных дисков с указанием количества поступивших заказов на каждый диск:
7) Выполним запрос на вывод полной информации о дисках находящихся в прокате:
8) Выполним запрос на клиентов у которых на руках имеются диски с указанием количества дисков у каждого:
9) Выполним запрос вывод фамилий должников с указанием даты выдачи, даты возврата, и количества дисков находящихся у каждого должника:
Отчеты по результатам решения задач
В базе данных "Видеотека" имеются четыре отчета: сделанные по всем имеющимся таблицам. "Клиенты" - выводит информацию анкетную информацию о каждом клиенте, зарегистрированном в видеотеке. "Взяли в прокат" - выводит информацию о клиентах которые взяли в прокат диски с указанием названий дисков, даты выдачи и даты возврата.
"Каталог дисков" - выводит полную информацию о всех дисках имеющихся в видеотеке
"Заказ_количества" - выводит информацию о заказанных дисках, с указанием количества заказов поступивших на каждый диск, режиссера, жанра, актеров и годом выпуска.
Организация интерфейса с пользователем
Для удобной работы был разработан интерфейс пользователя. Были созданы экранные формы для ввода, редактирования, удаления данных. База данных также сопровождается краткой помощью. Это будет вполне удобно для работы сотрудника, который обладает не столь сильными знаниями в области РС. При создании форм были использованы несколько макросов для улучшения работы с базой данных . Формы представлены в приложении. Описание контрольного примера
Контрольный пример содержит информацию о выдачи диска клиенту и о возврате диска. Имеется клиент, который хочет взять в прокат тот или иной диск. Остаётся дело за сотрудником, необходимо ввести в БД все необходимые данные о клиенте (если клиент ранее уже пользовался услугами видеотеки то его данные могут иметься БД) и дату возврата. Контрольный пример построен так, что есть записи, удовлетворяющие запросам и записи неудовлетворяющие запросам.
Заключение
База данных - это совокупность структурированных и взаимосвязанных данных и методов, обеспечивающих добавление выборку и отображение данных. Microsoft Access позволяет управлять всеми сведениями из одного файла базы данных. В рамках этого файла используются следующие объекты:
- таблицы для сохранения данных;
- запросы для поиска и извлечения только требуемых данных; - формы для просмотра, добавления и изменения данных в таблицах;
- отчеты для анализа и печати данных в определенном формате; Удачная разработка базы данных обеспечивает простоту ее поддержания. В ходе проделанной работы, нами были созданы:
- 5 таблиц
- 9 запросов на выборку - 21 форм
- 4 отчета
В заключении можно сказать, что система выполняет все возложенные на неё функции по предоставлению всей необходимой информации предполагаемому пользователю данной базы данных. Но данная система может не полностью автоматизирует предметную область "Видеотека ", а лишь частично, так как это требует неких конкретных знаний в этой предметной области. Данная система может быть доработана для выполнения других задач по дальнейшей автоматизации предметной области.
Приложение А
Экранные формы контрольного примера
Рисунок А 1- Главная кнопочная форма
Рис.8. Форма "Диски"
Рис.9. Форма "Прокат"
Рис.10. Форма "Клиенты"
Рис.11. Форма "Возврат"
Рис.12. Форма "Принять диск"
Перед открытием формы "По дате выдачи(кто кому сколько дисков)" предлагается ввести дату выдачи:
Рис.13. Форма "По дате выдачи(кто кому сколько дисков)"
Перед открытием формы "Кто сколько дисков вернет в заданный день" предлагается ввести дату возврата:
Рис.14. Форма "Кто сколько дисков вернет в заданный день"
Рис.15. Форма "Какие диски вернут сегодня"
Рис.16. Форма "Должники"
Рис.17. Форма "Администратор" Рис.18. Форма "Редактировать список сотрудников"
Рис.19. Форма "Редактировать список DVD"
Рис.20. Форма "Редактировать список клиентов"
Рис.21. Форма "Заказ"
Приложение Б
Отчеты по результатам решения задач
Рис.22. Отчет "Взяли в прокат"
Рис.23. Окно конструктора отчета "Взяли в прокат"
Рис.24. Отчет "Заказ_количество"
Рис.25. Отчет "Клиенты"
Рис.26. Отчет "Каталог дисков"
2
Документ
Категория
Рефераты
Просмотров
891
Размер файла
2 460 Кб
Теги
курсовая
1/--страниц
Пожаловаться на содержимое документа