Файл: В.В. Крюкова Проектирование, создание и использование баз данных MS ACCESS Часть 2. Физическое проектирование базы данных.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 31.05.2024
Просмотров: 53
Скачиваний: 0
16
УСТАНОВКА СВЯЗЕЙ МЕЖДУ ТАБЛИЦАМИ
Создание связей между таблицами – последний этап физического проектирования БД. Связь между таблицами устанавливает отношение между совпадающими значениями в ключевых полях. В большинстве случаев связывают первичный ключ главной таблицы с внешним ключом подчинённой таблицы (часто имеющим то же имя), например, первый ключ Код контрагента таблицы Контрагенты и внешний ключ Код контрагента таблицы ЖХО. Существуют четыре типа отношений:
1.Один – к одному 1 ↔ 1. Запись таблицы А может иметь не более одной связанной записи в таблице В и наоборот. Ключевое поле в таких таблицах должно быть уникальным.
2.Многие – к одному ∞ ↔ 1. Одной записи в таблице А может соответствовать одна запись в таблице В, а одной записи в таблице В – несколько записей в таблице А. В таблице В ключевое поле должно быть уникальным.
3.Один – ко многим 1 ↔ ∞. Каждой записи в таблице А могут соответствовать несколько записей в таблице В, а запись в таблице В не может иметь более одной соответствующей записи в таблице А. В таблице А ключевое поле должно быть уникальным. Отношения
вида 1 ↔ ∞ и ∞ ↔ 1 отличаются тем, какая таблица является главной.
4.Многие – ко многим ∞ ↔ ∞. Такая таблица не нормализована. Одной записи таблицы А может соответствовать несколько записей таблицы В и наоборот. Уникальных ключей нет. Все ключи внешние. В этом случае таблицу надо нормализовать, используя инст-
румент Анализатор таблиц (меню Сервис, Анализ, Таблица, запус-
кается мастер).
Связанные поля не обязательно должны иметь одинаковые имена
(поле Номер счёта таблицы План счетов и поле Дебет таблицы ЖХО),
но обязательно должны иметь одинаковые типы данных. Поля типа Числовой должны иметь одинаковые значения свойства Размер поля. Разрешается связывать типы полей Счётчик и Числовое, Длинное целое (или Счётчик и Числовое поле, если код репликации задан для обоих полей). Перед установкой связей следует закрыть все таблицы.
17 |
|
|
|
|
|
|
|
Находясь в окне |
|||
|
БД, |
нажать кнопку |
|||
|
Схема данных, |
затем |
|||
|
Добавить |
таблицу |
|||
|
(или |
команда |
меню |
||
|
Связи, |
Добавить |
|||
|
таблицу), |
появится |
|||
|
окно |
|
Добавление |
||
|
таблицы |
(рис. 14). |
|||
|
Выбрать |
таблицу |
из |
||
|
списка |
(один |
|
раз |
|
Рис. 14. ДО Добавление таблицы |
щёлкнуть |
|
левой |
||
кнопкой |
мыши) |
и |
|||
|
нажать кнопку Доба- |
вить, выбрать следующую таблицу, нажать кнопку Добавить и т.д. Выбрать все таблицы, затем нажать кнопку Закрыть. Затем уцепить левой кнопкой мыши поле первой таблицы со стороны связи 1 и тащить, опустить на то же поле другой таблицы, появится ДО Изменение связей (рис. 15), внизу указан тип отношения один – ко многим, нажать кнопку Создать. Для удаления связи – щёлкнуть правой кнопкой мыши нужную связь и выбрать команду Удалить, для изменения – два раза щёлкнуть линию связи, появится ДО Изменение связей, которое имеет три флажка: Обеспечение целостности данных означает выполнение ус-
ловий корректного внесения записей, Каскадное обновление связан-
ных полей, Каскадное удаление связанных полей означают, что при изменении (или удалении) значений первичного ключа главной табли-
|
цы автоматически |
меня- |
||
|
ются (или удаляются) со- |
|||
|
ответствующие значения |
|||
|
внешнего |
ключа подчи- |
||
|
ненной |
таблицы. |
Связи |
|
|
следует |
|
создавать |
при |
|
пустых |
таблицах, |
иначе |
|
|
нельзя |
будет установить |
||
|
эти параметры целостно- |
|||
|
сти БД (или какой-либо |
|||
|
из них). |
|
составном |
|
Рис. 15. ДО Изменение связей |
При |
|||
ключе в окне Изменение |
18
связей необходимо для каждого ключа главной таблицы (Таблица) выбрать соответствующее поле подчинённой таблицы (Связанная таблица). При установлении связи по составному ключу необходимо выделить все поля, входящие в ключ главной таблицы, и перетащить их на одно из полей связи в подчинённой таблице. При выделении полей удерживать клавишу <Ctrl>.
Установленные связи используются при создании запросов, форм и отчётов, их называют постоянными. Надо сохранить макет схемы данных, нажав кнопку Сохранить. Закрыть окно Схема данных. Установим связи между всеми таблицами в соответствии с логической моделью данных.
Если в ДО Изменение связей нажать кнопку Объединение, откро-
ется ДО Параметры объединения – критерии для отбора записей (рис. 16). Например, для любого типа связи можно выбрать:
1. Объединение только тех записей, в которых связанные поля обеих таблиц совпа-
дают (внутреннее объединение).
2. Объединение всех записей из таблицы А и только тех из таблицы В, в которых связанные поля совпадают (левое внешнее объединение).
3. Объединение всех записей из таблицы В и только тех из таблицы А, в которых связан-
ные поля совпадают (правое внешнее объединение).
Для связей между таблицами на уровне БД лучше использовать только внутреннее объединение, а оба внешние объединения – при создании запросов.
В MS Access 2000 существуют два способа организации связи: создание непосредственных связей (вручную) с помощью инструмента Схема данных и создание вложенных таблиц. Чтобы создать вложенную таблицу, надо открыть главную таблицу в режиме просмотра, активизировать поле первичного ключа (необязательно) и выполнить команду меню Вставка, Подтаблица, появится ДО, в котором выбрать подчинённую таблицу и указать: в списке Подчинённые поля – внешний ключ (первичный ключ подчинённой таблицы) и в списке Основные поля – первичный ключ главной таблицы, ОК. Рядом с именем поля пер-
19
вичного ключа главной таблицы появится знак . При щелчке мыши по нему открывается подчинённая (связанная) таблица.
Установим связи между таблицами БД “Бухгалтерский учёт на предприятии” (рис. 17). Если в ДО
Изменение связей вид связи определяется неправильно или вообще не определён, следует вернуться к этапу конструирования таблиц, проверить свойства первичных и внешних ключей, изменить
Рис. 17. Схема данных при необходимости.
Схема данных –
графическое представление физической модели БД, полностью соответствует логической МД (рис. 1).
МАКЕТ ТАБЛИЦЫ
Для более приятного восприятия таблицы на экране можно её отформатировать: изменить ширину столбцов, высоту строк, шрифт, цвет текста, линий сетки, фона, оформление, которое может быть обычным, приподнятым или утопленным и др. Эти параметры отображения таблицы на экране называются макетом таблицы и сохраняются вместе с ней.
Настройка макета выполняется в режиме таблицы, используется:
команда меню Формат и ПИ Формат (режим таблицы). Многие опе-
рации можно выполнять мышью: изменить ширину, высоту, скрыть столбцы (перетащив правую границу влево до исчезновения столбца), изменить порядок следования – выделить столбец (мышью щелкнуть по заголовку) и перетащить в нужное место, удалить столбцы, закрепить столбцы (команда меню Формат). Сохранить изменения: ответить Да на вопрос “Сохранить макет таблицы?”
20
ИМПОРТ И ПРИСОЕДИНЕНИЕ ВНЕШНИХ ТАБЛИЦ
Импорт и присоединение таблиц – ещё один способ создания таблиц в активной (открытой) БД. Можно импортировать или присоединить таблицу из другого файла БД MS Access, рабочий лист (список) MS Excel, таблицу из файла БД в других форматах (например, .dbf и др.). Разница между импортом и присоединением внешней таблицы заключается в том, что при импорте таблица физически помещается в активную БД и последующие изменения в ней не отражаются на источнике, а в результате присоединения в активную БД помещается только ссылка на внешнюю таблицу. Присоединённая таблица сохраняет связь с источником, и любое изменение данных в ней автоматически сохраняется во внешней БД-источнике. Импорт и присоединение таблиц осуществляется из меню Файл, Внешние данные командами Импорт и Связь с таблицами соответственно.
ЛАБОРАТОРНАЯ РАБОТА № 2
Создание таблиц БД в MS Access
Задание:
1.Используя Режим конструктора, Режим таблицы и Мастер таблиц, создать таблицы БД своей предметной области разными способами в соответствии с логической МД.
2.Определить типы данных полей, включая MEMO, объект OLE и
выбор из списка (Мастер подстановок).
3.Для некоторых полей задать свойства Маска ввода.
4.Для каждой таблицы определить первичные и внешние ключи.
5.Для внешнего ключа подчинённой таблицы определить поле подстановки, указав в качестве столбца данных поле первичного ключа главной таблицы.
6.Создать схему данных. В диалоговом окне Изменение связей
включить флажки: Обеспечение целостности данных, Каскадное обновление и удаление связанных полей.
21
СПИСОК РЕКОМЕНДУЕМОЙ ЛИТЕРАТУРЫ
1.Новиков Ф.А. Microsoft Office 2000 в целом / Ф.А. Новиков,
А.Д. Яценко. – СПб.: БХВ – Петербург, 2001. – 728 с.
2.Программирование в среде Access 2000: Энциклопедия пользователя; Пер. с англ. / Стивен Форт, Том Хоун, Джеймс Релстон. – Киев: ДиаСофт, 2000. – 544 с.
3.Дубнов П.Ю. Access 2000. Проектирование баз данных. – М.:
ДМК, 2000. – 272 с.
4.Послед Б.С. Access 2000. Базы данных и приложения. – Киев:
ДиаСофт, 2000. – 512 с.
5. Бекаревич Ю.Б. Самоучитель Microsoft Access 2000 /
Ю.Б. Бекаревич, Н.В. Пушкина. – СПб.: БХВ-Санкт-Петербург, 1999. – 480 с.