- •«Основные этапы создания реляционной бд»
- •Постановка задачи
- •Анализ предметной области
- •Проектирование бд «Автосалон»
- •Реализация бд «Автосалон»
- •Контрольные вопросы
- •Основные этапы создания реляционной бд и их содержание.
- •Понятие информационно-логической модели предметной области и порядок ее формирования.
- •Требования, предъявляемые к содержанию таблиц реляционной бд.
- •Понятие «поле» таблицы бд. Какие бывают поля? Как формируется имя поля?
- •Как задать ключевое поле в таблице?
- •В чем различие между первичным и внешним ключом?
Реализация бд «Автосалон»
Этап 4. Создание таблиц БД средствами СУБД MS Access.
4.1. Загрузить СУБД MS Access. Создать файл БД (Файл/Создать/ Новая БД…). Сохранить БД в рабочей папке, присвоив имя avto.mdb.
4.2. Выбрать в окне БД вкладку Таблицы.
4.3. Создать макет таблицы Автомобили в режиме Конструктора (рис. 2.5).
Рис. 2.5. Макет таблицы Автомобили
Примерное содержание макета таблицы Автомобили (имена полей, их свойства и типы данных) приведено в табл. 2.2.
Таблица 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 Индексированное поле: Нет Для Мастера подстановок выбрать фиксированный набор значений (рис. 2.6) |
Другое оснащение |
Поле Memo |
Дополнительные аксессуары |
Значение по умолчанию: Радио/плейер, раздвижная крыша |
Заводская цена |
Денежный |
Заводская продажная нетто-цена |
Формат: Денежный Число десятичных знаков: Auto Индексированное поле: Нет |
Транспортные издержки |
Денежный |
Издержки на доставку |
Формат: Денежный Число десятичных знаков: Auto Индексированное поле: Нет |
Предпродажные издержки |
Денежный |
Издержки на предпродажную подготовку |
Формат: Денежный Число десятичных знаков: Auto Значение по умолчанию: 105 Индексированное поле: Нет |
Специальная модель |
Логический |
Спец. модель или стандартная |
Формат: Да/Нет |
Внимание! Все поля, за исключением поля Другое оснащение, должны быть обязательными для заполнения (Свойство Обязательное поле: Да).
*Мастер подстановок позволяет создать для указанных полей список, из которого выбирается значение.
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).
Завершить работу с СУБД MS Accеss.
Оформить отчет о выполнении работы.