Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lab_Access.doc
Скачиваний:
128
Добавлен:
31.05.2015
Размер:
2.91 Mб
Скачать

Лабораторная работа № 2 Освоение этапов создания реляционной базы данных

Цель работы

  • изучить этапы создания реляционной БД;

  • практически освоить создание реляционной БД средствами СУБД MS Aсcess.

Содержание отчета

  1. Название и цель работы.

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

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

  4. Список контрольных вопросов и ответов на них.

  5. Выводы.

  6. Список использованных источников.

Контрольные вопросы

  1. Перечислите основные этапы создания реляционной БД. Кратко поясните содержание каждого этапа.

  2. Понятие информационно-логической модели предметной области и порядок ее формирования.

  3. Краткая характеристика основных моделей данных (иерархическая, сетевая, реляционная).

  4. Виды отношений между таблицами реляционной БД.

  5. Какие требования предъявляют к содержанию таблиц реляционной БД?

  6. Понятие «поле» таблицы БД. Какие бывают поля? Как формируется имя поля?

  7. Как задать ключевое поле в таблице? В чем различие между первичным и внешним ключом?

Порядок выполнения работы

  1. Изучить этапы создания реляционной БД.

Укрупнено, процесс создания реляционной базы данных состоит из следующих этапов (рис. 2.1):

1 этап. Определение цели создания базы данных.

2 этап. Выделение информационных объектов предметной области.

3 этап. Определение логической структуры БД.

4 этап. Создание и заполнение объектов базы данных средствами конкретной СУБД.

Практическое освоение этапов создания реляционной БД будет выполняться на примере БД «Автосалон» для предметной области «Продажа автомобилей».

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

Средствами реляционной СУБД Microsoft Access разработать БД для заданной предметной области.

Предметная область: деятельность фирмы по продаже автомобилей.

Входная информация: первичные документы предметной области (каталог автомобилей, бланк заказа, сведения о клиентах).

Выходная информация: таблицы-отношения Клиент, Автомобиль, Заказ (другие объекты БД в данной работе создаваться не будут).

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

  1. Предварительная подготовка.

Перед началом работы по созданию базы данных необходимо:

  • изучить первичные документы предметной области,

  • выполнить описание выбранной предметной области, включая реальные объекты и процессы,

Рис. 2.1. Этапы создания реляционной БД

  • подготовить всю необходимую информацию для удовлетворения предполагаемых запросов пользователя,

  • определить потребности в обработке, анализе и отображении данных.

  1. Анализ предметной области

При традиционной организации деятельность салона по продаже автомобилей находит свое отражение в таких документах, как:

– каталог автомобилей, содержащий все необходимые характеристики, фото модели;

– бланк-заказа (договор купли-продажи) содержит всю информацию о заключенной сделке и сведения о клиенте;

– карточка клиента (как правило, заполняется для постоянных клиентов) включает подробную информацию о клиенте.

Ручная обработка всей информации без использования вычислительной техники не может выполняться оперативно, требует значительных временных и трудозатрат. Использование базы данных «Автосалон» позволит оперативно накапливать, систематизировать и эффективно обрабатывать информацию по различным срезам, формировать отчеты, выявлять слабые звенья в системе продаж.

  1. Проектирование БД «Автосалон»

1-й этап. Определение цели создания БД.

На первом этапе проектирования БД определяют: цель создания БД, ее функции и примерный перечень информации.

Целью создания БД «Автосалон» является автоматизация учета информации по продаже автомобилей.

Функции БД «Автосалон»:

  • хранение информации о клиентах автосалона, о продаваемых автомобилях и сформированных заказах,

  • обновление и добавление информации (о клиентах, автомобилях и заказах),

  • анализ информации по различным срезам (клиент, автомобиль, заказ),

  • выдача итоговой информации в виде отчетов.

На основе анализа предметной области выделяют примерный перечень информации проектируемой БД:

  • сведения о клиенте автосалона,

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

  • сведения о заказе (№ и дата заказа, скидка, сведения об оплате и т.п.).

2-й этап. Выделение информационных объектов предметной области.

На втором этапе проектирования БД составляют описание предметной области в виде реквизитов, извлекаемых из первичных документов – источников загрузки БД:

  • фамилия, имя, отчество клиента автосалона,

  • дата рождения клиента,

  • адрес и телефон клиента,

  • модель автомобиля,

  • мощность двигателя,

  • количество дверей,

  • цвет кузова,

  • обивка салона,

  • дополнительное оснащение и другие характеристики автомобиля,

  • заводская цена автомобиля,

  • издержки (транспортные и предпродажные),

  • дата формирования заказа,

  • предоставляемые скидки, %.

Функциональный анализ реквизитов позволяет выделить следующие информационные объекты: Клиент и Автомобиль (рис. 2.2).

Рис. 2.2. Информационные объекты предметной области

«Продажа автомобилей»

3-й этап. Определение логической структуры БД.

Реальные отношения между информационными объектами являются отношениями «многие-ко-многим», которые непосредственно не поддерживаются реляционными СУБД. Поэтому реальные отношения «многие-ко-многим» трансформируются в отношения «один-ко-многим» путем ввода объекта-связки Заказ.

Для установления связей каждому объекту назначается ключ (ключевое поле). Причем ключи объектов Клиент и Автомобиль (первичные) должны присутствовать как внешние ключи в объекте Заказ (рис. 2.3).

Рис. 2.3. Отношения 1:∞ между информационными объектами

Связь между таблицами устанавливается с помощью ключей Код клиента и Код модели, которые в главных таблицах Клиенты и Автомобили являются первичными, а в таблице-связке Заказы – внешними.

Таким образом, между таблицами Клиенты-Заказы и Автомобили-Заказы устанавливаются одно-многозначные отношения (1 : ∞ ), которые поддерживаются реляционной СУБД.

В соответствии с понятиями реляционной СУБД каждому информационному объекту в проектируемой БД будет соответствовать таблица (Клиенты, Автомобили, Заказы).

На основе функционального анализа реквизитов предметной области определяют примерный состав и структуру данных базовых таблиц (табл. 2.1).

Таблица 2.1

Состав и структура данных базовых таблиц

Таблица Клиенты

Таблица Автомобили

Таблица Заказы

  1. Код клиента(ключ)

  1. Код модели(ключ)

  1. Код заказа(ключ)

  1. Фамилия

  1. Модель

  1. Код клиента

  1. Имя

  1. Мощность двигателя

  1. Код модели

  1. Отчество

  1. Цвет

  1. Дата заказа

  1. Адрес

  1. Количество дверей

  1. Скидка, %

  1. Телефон

  1. Заводская цена

  1. Оплачено

  1. Издержки (транспортные, предпродажные)

  1. Специальная модель

  1. Дополнительное оснащение

При этом выполняются основные требования к содержанию таблиц:

  1. Каждая таблица содержит информацию только на одну тему.

  2. Информация в таблицах не дублируется.

  3. Для связи между таблицами заданы первичные ключи, однозначно определяющие каждую запись в таблице.

При разработке полей для каждой таблицы необходимо учитывать:

  1. Каждое поле должно быть связано с темой таблицы.

  2. Не включать в таблицу данные, которые являются результатом вычисления.

  3. Информацию следует разбивать на наименьшие логические единицы (например, поля «Индекс», «Страна», «Населенный пункт», «Почтовый адрес», а не общее поле «Адрес»).

В результате выполнения теоретических этапов 1–3 получают проект логической структуры БД «Автосалон» (рис. 2.4), соответствующей информационно-логической модели предметной области.

Рис. 2.4. Проект логической структуры БД «Автосалон»

  1. Реализация БД «Автосалон»

4-й этап. Создание таблиц БД средствами СУБД MS Access.

4.1. Загрузить СУБД MS Access.

4.2. Создать файл новой БД (Файл/Создать/Новая БД…) и сохранить БД в рабочей папке, присвоив имя avto.mdb.

4.3. На вкладке Таблицы создатьмакет таблицы Автомобили в режиме Конструктора (рис.2.5).

В табл. 2.2 приведено примерное содержание макета таблицы Автомобили:

  • имена полей,

  • типы данных полей,

  • свойства полей,

  • описания полей (необязательные для заполнения).

Внимание!

Все поля, за исключением поля Другое оснащение, должны быть обязательными для заполнения (Свойство Обязательное поле: Да).

Рис. 2.5. Макет таблицы Автомобили

Таблица 2.2

Примерное содержание макета таблицы Автомобили

Имя поля

Тип данных

Описание (необязательный параметр)

Свойства поля (определяют правила сохранения, отображения и обработки данных в поле)

1

2

3

4

Код модели

Числовой

Ключевое поле,код модели по заводскому каталогу

Индексированное поле: Да/Совпадения не допускаются

Ключевое поле задается в меню Правка/Ключевое поле

Модель

Текстовый

Тип кузова

Размер поля: 20

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

Corolla

Индексированное поле: Да/Совпадения допускаются (одна и та же модель может встречаться в БД многократно с различными вариантами оснащения)

Мощность

Текстовый

Мощность двигателя (кВт/л.с.)

Размер поля: 10

Индексированное поле: Нет

Цвет

Текстовый

Цвет кузова

Размер поля: 20

Индексированное поле: Нет

Количество дверей

Числовой

2 или 4

Размер поля: Байт

Формат: Основной

Число десятичных знаков: 0

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

Условие на значение: 2 Or 4

Сообщение об ошибке: Данное поле может содержать только 2 или 4

Индексированное поле: Нет

Окончание табл. 2.2

1

2

3

4

Коробка передач

*Мастер подстановок, фиксированный набор значений

Автоматика,

ручная

Размер поля: 12

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

Условие на значение: «Ручная» Or «Автоматика»

Сообщение об ошибке: Допустимы только значения !Ручная» или «Автоматика»

Индексированное поле: Нет

Обивка

*Мастер подстановок, фиксированныйнабор значений

Велюр,

Кожа,

Ткань

Размер поля: 10

Индексированное поле: Нет

Другое оснащение

Поле Memo

Дополнительные аксессуары

Значение по умолчанию: Радио/плейер, раздвижная крыша

Заводская цена

Денежный

Заводская продажная нетто-цена

Формат: Денежный

Число десятичных знаков: Auto

Индексированное поле: Нет

Транспортные издержки

Денежный

Издержки на доставку

Формат: Денежный

Число десятичных знаков: Auto

Индексированное поле: Нет

Предпродажные издержки

Денежный

Издержки на предпродажную подготовку

Формат: Денежный

Число десятичных знаков: Auto

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

Индексированное поле: Нет

Специальная модель

Логический

Спец. модель или стандартная

Формат: Да/Нет

*Мастер подстановок позволяет создать для указанных полей список, из которого выбирается значение (рис. 2.6).

Рис. 2.6. Мастер подстановок с фиксированным набором значений

4.4. Сохранить созданный макет таблицы под именем Автомобили.

4.5. В режиме Таблицы добавить в таблицу Автомобили 3 записи:

Код модели

12580

12653

12651

Модель

Corolla Liftback

Corolla CompactGT

Corolla CompactXL

Мощность

69/90

100/139

90/135

Цвет

Бутылочное стекло

Черный

Небесно-голубой

Количество дверей

4

2

2

Коробка передач

Автоматика

Ручная

Ручная

Обивка

Ткань

Кожа

Велюр

Другое оснащение

Радио/плейер, раздвижная крыша, лаковое покрытие “Металлик”

Радио/плейер, раздвижная крыша, алюминиевые дворники

Электро-подъемник окон, раздвижная крыша

Заводская цена

39200

41100

37900

Транспортные издержки

1200

975

1050

Предпродажные издержки

100

105

110

Специальная модель

Нет

Да

Да

4.6. Создать макет таблицы Клиенты в режиме Конструктора.

Примерное содержание макета таблицы Клиенты (имена полей, их свойства и типы данных) приведено в табл. 2.3.

Внимание!

Поля Код клиента, Фамилия, Страна должны быть обязательными для заполнения (Свойство Обязательное поле: Да).

Таблица 2.3

Примерное содержание макета таблицы Клиенты

Имя поля

Тип данных

Описание (необязательный параметр)

Свойства поля (определяют правила сохранения, отображения и обработки данных в поле)

Код клиента

Счетчик

Ключевое поле, уникальный номер клиента в БД

Индексированное поле: Да/Совпадения не допускаются

Ключевое поле задается в меню Правка/Ключевое поле

Фамилия

Текстовый

Фамилия

Размер поля: 40

Индексированное поле: Да/Совпадения допускаются

Имя

Текстовый

Имя

Размер поля: 20

Индексированное поле: Да/Совпадения допускаются

Отчество

Текстовый

Отчество

Размер поля: 25

Индекс

Текстовый

Почтовый индекс

Размер поля: 6

Индексированное поле: Да/Совпадения допускаются

Страна

Текстовый

Название страны

Размер поля: 20

Значение по умолчанию: Беларусь

Индексированное поле: Да/Совпадения допускаются

Населенный пункт

Текстовый

Название населенного пункта

Размер поля: 40

Значение по умолчанию: Минск

Индексированное поле: Да/Совпадения допускаются

Почтовый адрес

Текстовый

Почтовый адрес (улица, дом, квартира)

Размер поля: 50

Индексированное поле: Нет

Телефон

Текстовый

Контактный телефон

Размер поля: 20

Индексированное поле: Нет

4.7. Сохранить созданный макет таблицы под именем Клиенты.

4.8. В режиме Таблицы добавить в таблицу Клиенты 3 записи (значения полей задать самостоятельно).

4.9. Создать макет таблицы Заказы в режиме Конструктора.

Примерное содержание макета таблицы Заказы (имена полей, их свойства и типы данных) приведено в табл. 2.4.

Внимание!

Все поля, за исключением поля Скидка, должны быть обязательными для заполнения (Свойство Обязательное поле: Да).

Таблица 2.4

Примерное содержание макета таблицы Заказы

Имя поля

Тип

данных

Описание

Свойства поля (определяют правила сохранения, отображения и обработки данных в поле)

Код заказа

Счетчик

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

уникальный номер заказа

Индексированное поле: Да/Совпадения не допускаются

Ключевое поле задается в меню Правка/Ключевое поле

Код модели

Числовой, *Мастер подстановок

Внешний ключ, для связи с таблицей Автомобили

Размер поля: Длинное целое

Индексированное поле:

Да, допускаются совпадения

Код клиента

Числовой,

*Мастер подстановок

Внешний ключ, для связи с таблицей Клиенты

Размер поля: Длинное целое

Индексированное поле:

Да, допускаются совпадения

Дата заказа

Дата/время

Дата формирования заказа ДД.ММ.ГГ

Формат: Краткий формат даты

Значение по умолчанию: =Date()

Индексированное поле: Да/Совпадения допускаются

Скидка

Числовой

Размер скидки в %

Размер поля: Одинарное с плавающей точкой

Формат: Процентный

Условие на значение: Between 0 And 1

*Используя Мастер подстановок, сформировать для полей Код клиента и Код модели список значений из таблиц Клиенты и Автомобили:

– для поля Код клиента выбрать для столбца подстановки 2 поляКод клиента и Фамилия (установить флажок Скрыть ключевое поле);

– для поля Код модели выбрать для столбца подстановки 2 поляКод модели и Модель (сбросить флажок Скрыть ключевое поле).

4.10. Сохранить макет таблицы под именем Заказы.

4.11. В режиме Таблицы добавить в таблицу Заказы 9 записей (значения полей задать самостоятельно).

4.12. Сформировать схему БД (установить связи между таблицами БД в соответствии с информационно-логической моделью предметной области):

  • выполнить команду Сервис/Схема данных,

  • в диалоговом окне Добавление таблицы последовательно добавить все три таблицы.

Внимание!

Окно не отображается, если в таблице Заказы для внешних ключей Код модели и Код клиента сформированы списки подстановок значений из соответствующих таблиц,

  • установить связь между таблицами Клиенты и Заказы, перетащив ключевое поле Код клиента из главной таблицы Клиенты на соответствующее поле таблицы-связки Заказы.

Внимание!

Если связь уже сформирована при помощи Мастера подстановок, то необходимо вызвать диалоговое окно Изменение связей (выделить связь, КЗМ/Изменить связь… или меню Связи/Изменить связь…),

  • в диалоговом окне установить флажок Обеспечение целостности данных (рис. 2.7),

  • аналогично установить связь между таблицами Автомобили и Заказы, перетащив ключевое поле Код модели из главной таблицы Автомобили на соответствующее поле таблицы-связки Заказы. В диалоговом окне Изменение связей установить флажок Обеспечение целостности данных,

Рис. 2.7.Формирование связи между таблицами Клиенты и Заказы

  • сохранить макет схемы данных (рис. 2.8).

Рис. 2.8. Схема БД «Автосалон»

  1. Завершить работу с СУБД MS Accеss.

  2. Для отчета подготовить распечатку окна БД, вкладка Таблицы (список созданных таблиц в режиме таблицы – Вид/Таблица).

  3. Оформить отчет о выполнении работы.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]