Скачать 1.03 Mb.
|
1.3. Отношение много-ко-многим Отношение много-ко-многим возникает между двумя таблицами в тех случаях, когда: - одна запись из первой таблицы может быть связана более чем с одной записью из второй таблицы; - одна запись из второй таблицы может быть связана более чем с одной записью из первой таблицы. В качестве примера обратимся к магазину оптовой торговли. Рассмотрим две группы объектов. 1. В таблице Поставки товаров (табл. 5) представлен список товаров, производимых предприятиями-поставщиками. 2. В таблице Заказы потребителей (табл. 6) содержится список товаров, заказанных потребителями. Между таблицами Поставки товаров и Заказы потребителей существует отношение много-ко-многим, так как каждый поставляемый товар может входить в несколько заказов. Аналогично каждый заказанный товар может производиться более чем одним предприятием. Связь между таблицами устанавливается на основании значений в совпадающих полях Код товара. 2. ПРОЕКТИРОВАНИЕ НОРМАЛИЗОВАННЫХ БАЗ ДАННЫХ. При проектировании реляционной базы данных необходимо решить вопрос о наиболее эффективной структуре данных. Основные цели проектирования: - обеспечить быстрый доступ к данным таблицы; - исключить ненужное повторение данных, которое является причиной ошибок при вводе и нерационального использования дискового пространства компьютера; - обеспечить целостность данных таким образом, чтобы при изменении одних объектов автоматически происходило соответствующее изменение связанных с ними объектов. Процесс уменьшения избыточности информации в базе данных называется нормализацией. В теории нормализации базы данных разработаны достаточно формализованные подходы к разбиению данных, обладающих сложной структурой, на несколько таблиц. Теория нормализации структуры оперирует пятью нормальными формами таблиц. Каждая следующая нормальная форма должна удовлетворять требованиям предыдущей формы и некоторым дополнительным условиям. Ограничимся рассмотрением первых трех нормальных форм, поскольку при практическом проектировании баз данных четвертая и пятая формы используются в редких случаях. В качестве примера рассмотрим таблицу Продажи (табл.7). Таблицу Продажи можно рассматривать как однотабличную базу данных. Основная проблема заключается в том, что в ней содержится значительное количество повторяющейся информации. Например, сведения о покупателе повторяются для каждого сделанного им заказа. Такая структура данных является причиной следующих проблем, возникающих при работе с базой данных: - значительные затраты времени на ввод повторяющихся данных. Например, для всех заказов, сделанных одним из покупателей, придется каждый раз вводить одни и те же данные о покупателе; - при изменении адреса или телефона покупателя необходимо корректировать все записи, содержащие сведения о заказах этого покупателя; - наличие повторяющейся информации приведет к неоправданному увеличению размера базы данных. В результате снизится скорость выполнения запросов. Кроме того, повторяющиеся данные нерационально используют дисковое пространство компьютера; - любые внештатные ситуации потребуют значительного времени для получения требуемой информации. Например, при больших размерах таблиц поиск ошибок будет занимать значительное время. 2.1. Первая нормальная форма Табл. 7 является ненормализованной таблицей. Требования к таблице в первой нормальной форме: 1. Таблица не должна иметь повторяющихся групп полей. 2. В таблице должны отсутствовать повторяющиеся записи. Для выполнения условия пункта 2 каждая таблица должна иметь первичный ключ. Таблица Продажи (табл. 7) не содержит первичного ключа, что допускает наличие в ней повторяющихся записей. Для выполнения условия 2 добавим поле Код клиента, которое будет содержать значение первичного ключа. Требование 1 постулирует устранение повторяющихся групп полей. Поскольку каждый покупатель может сделать несколько заказов, каждый из которых в свою очередь может содержать несколько товаров, то необходимы две таблицы. Каждая запись одной таблицы будет содержать сведения об одном из покупателей, а второй таблицы – информацию о каждом заказе. Поэтому надо разбить таблицу Продажи на две отдельные таблицы Клиенты и Заказы и определить поля Код клиента в качестве ключей связи. Структуры таблиц Клиенты и Заказы приведены на рис.1. Тип связи между таблицами Клиенты и Заказы будет один-ко-многим. Таким образом, для таблицы Клиенты решена проблема повторяющихся групп полей. Таблица Заказы содержит сведения о товарах, включенных в конкретный заказ. Для исключения повторяющихся записей можно воспользоваться одним из способов: 1) добавить в таблицу новое уникальное ключевое поле Код заказа, что позволит однозначно идентифицировать каждый из заказов. Однако при работе с Ms Access это далеко не лучший метод, так как при разработке многотабличных форм и отчетов связь между таблицами осуществляется посредством ключевых полей с совпадающими значениями; 2) использовать уникальный составной ключ, состоящий из полей Код клиента, Код товара и Дата заказа. После того как мы разделили повторяющиеся записи и определили ключевые поля в каждой таблице, таблицы Клиенты и Заказы находятся в первой нормальной форме (рис.1). Структура связей между таблицами называется схемой данных. 2.2. Вторая нормальная форма Таблица находится во второй нормальной форме, если: - она удовлетворяет условиям первой нормальной формы; - любое неключевое поле однозначно идентифицируется полным набором ключевых полей, входящих в составной ключ. Из приведенного выше определения следует, что понятие второй нормальной формы применимо только к таблицам, имеющим составной ключ. В рассматриваемом примере такой таблицей является таблица Заказы, в которой составной ключ образуют поля Код клиента, Код товара и Дата заказа. Она является таблицей во второй нормальной форме, поскольку поля Категория, Наименование товара и Цена однозначно определяются только одним из ключевых полей (Код товара). Для приведения таблицы ко второй нормальной форме выделим из таблицы Заказы таблицу Товары, которая будет содержать информацию о товарах каждого типа. Для связывания таблиц Заказы и Товары используется поле Код товара (рис.2). 2.3. Третья нормальная форма Таблица находится в третьей нормальной форме, если она: - удовлетворяет условиям второй нормальной формы; - ни одно из неключевых полей таблицы не идентифицируется с помощью другого неключевого поля. Обратимся к таблице Клиенты. Поле Руководитель этой таблицы содержит имена руководителей компаний, которые однозначно определяются значением поля Предприятие. Поскольку неключевое поле Руководитель однозначно определяется другим неключевым полем Предприятие, таблица Клиенты не является таблицей в третьей нормальной форме. Для приведения ее к третьей нормальной форме создадим новую таблицу Предприятие (рис.3.) ЗАДАНИЕ: Разработайте и изобразите реляционную модель своей БД в третьей нормальной форме (схему данных разместите после описание предметной области). 3. Разработка структуры справочных и основных таблиц. Входная информация – это информация, которую система получаем из окружающей среды. Она необходима для решения текущих задач и содержится на различных носителях: в первичных документах, машинных носителях, в памяти персонального компьютера. Эффективность и оперативность работы системы зависят от правильной организации входной информации, способов ее сбора, регистрации, передачи, хранения и обработки, ее состава и своевременного получения. Согласно анализу предметной области, всю входную информацию можно разделить на две категории: постоянную (справочную) и оперативную. Ведение данных постоянной информации позволяет исключить условно-постоянную информацию из первичных документов, что влияет на снижение трудоёмкости их заполнения, а также позволяет автоматизировать отчётный процесс. Пример структуры справочной таблицы приведен ниже. Таблица 1. Структура таблицы-справочника «Товары/Услуги»
Информация, которая обновляется постоянно, является оперативной: она корректируется в зависимости от ситуации и текущего состояния дел. Например, при появлении нового клиента информация о нем вносится в таблицу «Клиенты» (таблица 2). Таблица 2. Структура таблицы «Клиенты»
ЗАДАНИЕ: 1. Разработайте и представьте структуру справочных и основных (оперативных) таблиц своей БД. 2. Создайте спроектированные таблицы в базе данных. 3. Создайте схему данных (связи между таблицами). 4. Создайте формы ввода для каждой таблицы (через автоформу). Практическая работа № 13: Создание запросов. ЗАДАНИЕ: 1. Разработайте и согласуйте с преподавателем перечень запросов, которые будут доступны в проектируемой базе данных. Используйте разноплановые запросы: простые, с параметрами, с вычисляемыми полями, с группировкой. 2. Оформите перечень запросов следующим образом:
* Первый запрос приведен в качестве примера. 3. Создайте все спроектированные запросы в базе данных. ПРАКТИЧЕСКАЯ РАБОТА № 14: СОЗДАНИЕ И НАСТРОЙКА ОТЧЕТОВ. ЗАДАНИЕ: 1. Создайте с помощью Мастера отчеты по всем запросам БД. 2. Настройте внешний вид отчетов в режиме Макета. 3. Проверьте работу отчетов на контрольном примере. ПРАКТИЧЕСКАЯ РАБОТА № 15: СОЗДАНИЕ ПОЛЬЗОВАТЕЛЬСКОГО ИНТЕРФЕЙСА. ЗАДАНИЕ: 1. Создайте Главную кнопочную форму, которая будет автоматически загружаться при запуске базы данных. Главная форма должна содержать кнопки перехода ко всем объектам БД: таблицам, формам, запросам, отчетам. 2. Настройте кнопки Главной формы. Проверьте правильность работы. 3. На формах ввода добавьте кнопки, позволяющие перемещаться по записям, осуществлять поиск информации, переходить к другим формам и на Главную форму, закрывать форму ввода. Список литературы Основные источники:
Дополнительные источники:
Интернет-ресурсы:
|
Инструкция № тбу-07 по технике безопасности для учащихся на занятиях по шахматам К работе в классе шахмат допускаются лица, не имеющие медицинских противопоказаний, прошедшие инструктаж по технике безопасности,ознакомленные... |
Перечень инструкций по технике безопасности и противопожарной безопасности... Инструкция по правилам поведения и технике безопасности обучающихся на тренировочных занятиях (вводный инструктаж) |
||
Инструкция по технике безопасности на туристическом слете инструктаж... Лица, не прошедшие инструктаж по технике безопасности, к участию в турслете не допускаются |
Инструкция по технике безопасности Прежде чем начать работу на nikon a1, ознакомьтесь, пожалуйста, с инструкцией по технике безопасности, чтобы он прослужил нам долгие... |
||
Инструкция по технике безопасности и правилам поведения в компьютерном кабинете ... |
Инструкция по установке Важные замечания по технике безопасности Прочтите инструкции Перед включением прочтите все инструкции по технике безопасности и правилам работы с устройством |
||
Инструкция по охране труда и технике безопасности при работе с компьютерами,... Икт и курсы по использованию уло, прошедшие вводный инструктаж по охране труда, инструктаж по технике безопасности непосредственно... |
Инструкция по эксплуатации швейного полуавтомата Перед использованием машины просим внимательно прочесть инструкции по технике безопасности и рекомендации руководства, прилагаемого... |
||
Инструкция по эксплуатации швейного полуавтомата Перед использованием машины просим внимательно прочесть инструкции по технике безопасности и рекомендации руководства, прилагаемого... |
Инструкция по охране труда и технике безопасности для арматурщика... К работе в качестве заготовщика арматуры может быть допущен рабочий, прошедший курс обучения по программе техминимума и по технике... |
||
Инструкция по эксплуатации Инструкция по технике безопасности В целях безопасности выполнения на машине всех предусмотренных операции необходимо соблюдать правила техники безопасности |
Инструкция по технике безопасности при эксплуатации машин картофелеочистительной К работе на машине допускаются лица, прошедшие обучение по программе технического минимума и инструктаж по технике безопасности,... |
||
Инструкция по технике безопасности при эксплуатации машин картофелеочистительных К работе на машине допускаются лица, прошедшие обучение по программе технического минимума и инструктаж по технике безопасности,... |
Инструкция по технике безопасности при эксплуатации машин очистки корнеплодов (Д2) К работе на машине допускаются лица, прошедшие обучение по программе технического минимума и инструктаж по технике безопасности,... |
||
Инструкция по охране труда и технике безопасности для лаборанта кабинета... Инструкция по технике безопасности при проведении экскурсии по физике для учащихся |
Важные инструкции по технике безопасности При использовании данного электроприбора следует выполнять следующие основные требования по технике безопасности |
Поиск |