- •Рецензенты:
- •Введение
- •Содержание
- •1. Цель, задачи и реализуемые компетенции
- •2. Формулировка задания
- •3.2 Теоретическая часть курсового проекта
- •3.3 Практическая часть курсового проекта
- •3.3.1 Обследование предметной области
- •3. Структура работы
- •1. Теоретическая часть
- •2. Практическая часть
- •3.1 Введение к курсовому проекту
- •3.3.2 Разработка технического задания
- •3.3.3 Концептуальное проектирование
- •3.3.4 Инфологическое проектирование
- •3.3.5 Реляционная модель бд
- •3.3.6 Даталогическая модель бд
- •3.3.7 Запросы к базе данных
- •3.3.8 Разработка механизмов защиты данных от несанкционированного доступа
- •3.3.9 Требования к техническому обеспечению
- •3.3.10 Инструкция по использованию базы данных
- •3.3.11 Заключение
- •3.3.12 Список используемой литературы
- •3.3.13 Приложения
- •4. Общие требования к написанию и оформлению проекта
- •4.1 Оформление пояснительной записки
- •5. Последовательность выполнения задания
- •6. Критерии оценивания Проекта
- •7. Порядок защиты проекта
- •Список рекомендуемой литературы
- •Internet-ресурсы
- •Приложение 1
- •Направление (специальность) _______________________________________
- •Задание на курсовую работу (проект)
- •Приложение 2
- •Курсовой проект
- •Приложение 3
- •1 Безусловная выборка значений
- •2 Простая выборка
- •3 Выборка уникальных значений
- •4 Выборка вычисляемых значений
- •5 Выборка с условием
- •6 Выборка с упорядочением
- •7 Выборка с использованием оператора between
- •8 Выборка с использованием оператора in (принадлежит)
- •9 Выборка с использованием шаблонов
- •Имя поля like строковая константа
- •10 Выборка из связанных таблиц
- •Простое соединение
- •Соединение с дополнительным условием
- •Соединение трех таблиц
- •11 Использование группировки данных при организации запросов
- •Использование группировки данных совместно с условием
- •Использование having
- •12 Использование квантора существования в запросах
- •13 Объединение множеств
- •Субд ms Visual FoxPro
- •14 Модификация данных в таблицах
- •15 Удаление данных
- •16 Добавление записей
- •Insert into таблица [(поле [,поле] ...)] values (константа [,константа]...)
- •Insert into таблица [(поле [,поле] ...)] подзапрос
- •17 Запросы по дате
- •18. Соединение отношений. Оператор join
- •19. Коррелированные и некоррелированные подзапросы
- •20. Вычисления в таблицах. Команда calculate
3.3.3 Концептуальное проектирование
В процессе концептуального проектирования базы данных производится выбор информационных объектов, составляется перечень сущностей и атрибутов.
Для выделения информационных объектов в проектируемой базе данных необходимо соблюдать следующие условия:
1. Выявить документы, использующиеся фирмой в своей деятельности, и их реквизиты (поля).
2. Определить функциональную зависимость между реквизитами для каждого документа в отдельности.
3. Выбрать все зависимые реквизиты и указать для каждого из них все его ключевые (один или несколько), т.е. те, от которых он зависти функционально полно.
4. Сгруппировать реквизиты, зависимые от одинаковых ключевых реквизитов. Полученные группы и будут являться информационным объектом.
Совокупность полей – реквизитов выделенного объекта должна отвечать требованиям нормализации, в том числе:
- информационный объект должен содержать уникальный ключ, который может быть как простым, так и составным;
- все остальные (описательные или дополнительные) реквизиты должны быть независимыми друг от друга;
- все реквизиты, входящие в составной ключ, также должны быть независимыми;
- каждый описательный реквизит должен функционально полно зависеть от ключа, т.е. каждому значению ключа должно соответствовать только одно значение описательного реквизита;
- при составном ключе описательный реквизит должен зависеть целиком от всей совокупности реквизитов, образующих ключ;
- каждый описательный реквизит не должен зависеть от ключа транзитивно, через другой промежуточный реквизит.
Проведенный анализ предметной области «Прокат» позволяет выделить следующие сущности: «Клиент», «Носитель», «Заказ» и «Сотрудник».
Сущность «Клиент» может быть описана следующем перечнем атрибутов:
- код клиента,
- фамилия, имя, отчество клиента;
- паспортные данные;
- адрес;
- телефон;
- категория
Сущность «Носители» характеризуется атрибутами:
- код носителя;
- вид носителя;
- содержание носителя (художественный фильм или программное обеспечение);
- наименование;
- аннотация;
- обложка;
- стоимость проката.
Сущность «Сотрудник» можно описать с помощью атрибутов:
- код сотрудника;
- фамилия, имя, отчество сотрудника;
- личный пароль.
Центральной в проектируемой базе данных «Прокат» является сущность «Заказ», которая может быть описана с помощью атрибутов:
- код заказа;
- дата заказа;
- код клиента;
- код носителя;
- код сотрудника;
- дата возврата;
- стоимость услуги.
Первичными (уникальными) ключами для сущностей, входящих в базу данных «Прокат» являются:
- сущность «Клиент» – код клиента;
- сущность «Носитель» – код носителя;
- сущность «Сотрудник» – код сотрудника;
- сущность «Заказ» – код заказа.
Для сущности «Заказ» уникальные ключи «код клиента», «код носителя» и «код сотрудника» являются вторичными, и с их помощью осуществляется связь между всеми выбранными сущностями.
3.3.4 Инфологическое проектирование
В данном подразделе курсового проекта приводится алгоритм разработки ER-диаграммы (диаграммы «сущность – связь») разработанной модели предметной области, рассматривается классификация бинарных связей между сущностями, описывается моделирование связи «один-ко-многим». Рассматривается перечень атрибутов, описывающих, идентифицирующих или моделирующих свойства сущностей.
Основными задачами инфологического проектирования при разработке реляционных баз данных являются описание предметной области и формирование взгляда на предметную область с точки зрения пользователей базы данных.
Инфологическая модель предметной области включает:
- описание ее структуры и динамики;
- характер информационных потребностей пользователей в терминах, понятных пользователю и не зависимых от реализации баз данных.
Это описание выражается в терминах не отдельных объектов предметной области и связей между ними, а их типов, связанных с ними ограничений целостности и процессов, которые приводят к переходу предметной области из одного состояния в другое.
Основными подходами к созданию инфологической модели предметной области являются: функциональный подход к проектированию базы данных; предметный подход к проектированию базы данных; проектирование с использованием метода «сущность-связь»
Функциональный подход к проектированию базы данных. Этот метод реализует принцип «от задач» и применяется для обслуживания информационных потребностей тогда, когда известны функции некоторой группы лиц и|или комплекса задач, для которых создаётся рассматриваемая база данных.
Предметный подход к проектированию базы данных. Предметный подход к проектированию базы данных применяется в тех случаях, когда у разработчиков есть чёткое представление о самой предметной области и о том, какую именно информацию они хотели бы хранить в базе данных, а структура запросов не определена или определена не полностью. Тогда основное внимание должно быть уделено всестороннему обследованию предметной области и наиболее адекватному её отображению в базе данных с учётом самого широкого спектра информационных запросов к ней.
Проектирование с использованием метода «сущность-связь». Метод «сущность-связь» (entity-relation, ER-method) является комбинацией двух предыдущих и обладает достоинствами обоих.
Проектировщик разбивает предметную область на ряд локальных областей, каждая из которых включает в себя информацию, достаточную для обеспечения запросов отдельной группы будущих пользователей или решения отдельной задачи. Каждое локальное представление моделируется отдельно, затем они объединяются.
Диаграмма «сущность-связь» - Entity-Relationship Diagram в англоязычной литературе обозначается термином «ERD». ERD – это графическое представление структуры предметной области в терминах модели ER (сущностей-связей). На диаграммах именованные прямоугольники обозначают множества сущностей, а именованные ромбы – множества связей сущностей. Дуги, связывающие прямоугольники и ромбы могут быть ориентированными.
На рисунке 3.3 показана диаграмма «сущность-связь» (ERD) с тремя сущностями: «Клиент», «Сотрудник» и «Заказ». Для получения диаграммы «сущность-связь» для всей базы данных «Прокат» необходимо добавить еще одну сущность «Носитель».
Впервые модель «сущность-связь» (ERD) была предложена Петеров Пин-Шен Ченом в 1976 году. На использовании различных разновидностей ERD основано большинство современных подходов к проектированию баз данных.
Личный_пароль
код клиента
ФИО_клиента
код заказа
Сотрудник
Клиент
Код_сотрудника
Паспорт_клиента
адрес
телефон
категория
Заказ
дата заказа
код клиента
код носителя
Код_сотрудника
дата возврата
стоимость услуги
1 n 1 n
ФИО_сотрудника
Рисунок 3.3 – ERD с тремя сущностями
Когда в фирму приходит новый клиент, он проходит процедуру регистрации, после чего его заносят в базу данных клиентов проката и вручают ему членскую карточку. На этой членской карточке присутствует уникальный идентификационный номер клиента. С помощью этого номера оператор видео проката быстро идентифицирует клиента и получает полную картину о нем.
Все товары также пронумерованы. Каждому товару присваивается уникальный номер. Этикетка с этим кодом наклеивается на каждый товар, который выставляется на стеллаж. Клиент может взять любой товар, рассмотреть его и, если товар ему понравился, подойти с ним к продавцу. По коду товара оператор очень быстро находит товар в программе, получает от клиента деньги и отдает ему товар. Таким образом, вся процедура обслуживания клиента занимает несколько секунд.
При построении инфологической модели на основе метода «сущность-связь» выделяются три основных типа связей межу сущностями:
«один – к – одному»,
«один – ко – многим»,
«многие – ко – многим».
На основании проведенного концептуального проектирования можно сделать вывод о том, что между всеми сущностями в проектируемой базе «Прокат» данных связь между объектами осуществляется по типу «один – ко – многим».
Так один сотрудник может обслуживать много клиентов, но при этом клиент может сделать много заказов.
