Как сделать схему данных в access?
Содержание
Реляционная база данных, созданная в соответствии с проектом канонической модели данных предметной области, состоит из нормализованных таблиц, связанных одно-многозначными отношениями. В такой базе данных обеспечивается отсутствие дублирования описательных данных, их однократный ввод, поддержание целостности данных средствами системы. Связи между таблицами позволяют выполнить объединение данных различных таблиц, необходимое для решения большинства задач ввода, просмотра и корректировки данных, получения информации по запросам и вывода отчетов.
Связи между таблицами устанавливаются в соответствии с проектом логической структуры базы данных и запоминаются в схеме данных Access. Схема данных в Access является не только средством графического отображения логической структуры базы данных, она активно используется системой в процессе обработки данных. Создание схемы данных позволяет упростить конструирование многотабличных форм, запросов, отчетов, а также обеспечить поддержание целостности взаимосвязанных данных при вводе и корректировке данных в таблицах.
Создание схемы данных
Создание схемы данных начинается с выполнения команды Схема данных (Relationships) в группе Отношения (Relationships) на вкладке ленты Работа с базами данных (Database Tools). В результате выполнения этой команды открывается окно схемы данных и диалоговое окно Добавление таблицы (Show Table), в котором осуществляется выбор таблиц, включаемых в схему (см. рис. 3.48). Диалоговое окно Добавление таблицы откроется автоматически, если в базе данных еще не определена ни одна связь. Если окно не открылось, на ленте Работа со связями | Конструктор (Relationship Tools | Design) в группе Связи (Relationships) нажмите кнопку Отобразить таблицу (Show Table).
Включение таблиц в схему данных
В окне Добавление таблицы (Show Table) (рис. 3.48) отображены все таблицы и запросы, содержащиеся в базе данных. Выберем вкладку Таблицы (Tables) и с помощью кнопки Добавить (Add) разместим в окне Схема данных (Relationships) все ранее созданные таблицы базы данных Поставка товаров, отображенные в окне Добавление таблицы (Show Table). Затем нажмем кнопку Закрыть (Close). В результате в окне Схема данных (Relationships) таблицы базы будут представлены окнами со списками своих полей и выделенными жирным шрифтом ключами (см. рис. 3.52).
Создание связей между таблицами схемы данных
При создании связей в схеме данных используется проект логической структуры реляционной базы данных, в котором показаны все одно-многозначные связи таблиц. Реализуются связи с помощью добавления в связанные таблицы общих полей, называемых ключом связи. При одно-многозначных отношениях между таблицами ключом связи является ключ главной таблицы (простой или составной). В подчиненной таблице он может быть частью уникального ключа или вовсе не входить в состав ключа таблицы. Одно-многозначные связи являются основными в реляционных базах данных. Одно-однозначные связи используются, как правило, при необходимости распределять большое количество полей, определяемых одним и тем же ключом, по разным таблицам, имеющим разный регламент обслуживания.
Создание связей по простому ключу
Установим связь между таблицами ПОКУПАТЕЛЬ и ДОГОВОР, которые находятся в отношении «один-ко-многим». Устанавливая связи между парой таблиц, находящихся в отношении типа 1 : M, выделим в главной таблице ПОКУПАТЕЛЬ ключевое поле КОД_ПОК, по которому устанавливается связь. Далее при нажатой кнопке мыши перетащим его в соответствующее поле подчиненной таблицы ДОГОВОР.
Поскольку поле связи является уникальным ключом в главной таблице связи, а в подчиненной таблице связи не является ключевым, схема данных в Access выявляет отношение «один-ко-многим» между записями этих таблиц. Значение «один-ко-многим» (One-To-Many) отобразится в окне Изменение связей (Edit Relationships) в строке Тип отношения (Relationship Type) (рис. 3.49).
ЗАМЕЧАНИЕ
Если поле связи является уникальным ключом в обеих связываемых таблицах, схема данных в Access выявляет отношение «один-к-одному«. Если для связи таблиц вместо ключевого поля главной таблицы используется некоторый уникальный индекс, система также констатирует отношение таблиц как 1 : М или 1 : 1.
Определение связей по составному ключу
Определим связи между таблицами НАКЛАДНАЯ ОТГРУЗКА, которые связаны по составному ключу НОМ_НАКЛ + КОД_СК. Для этого в главной таблице НАКЛАДНАЯ выделим оба этих поля, нажав клавишу , и перетащим их в подчиненную таблицу ОТГРУЗКА.
В окне Изменение связей (Edit Relationships) (рис. 3.50) для каждого поля составного ключа главной таблицы НАКЛАДНАЯ, названной Таблица/запрос (Table/Query), выберем соответствующее поле подчиненной таблицы ОТГРУЗКА, названной Связанная таблица/запрос (Related Table/Query).
Каскадное обновление и удаление связанных записей
Если для выбранной связи обеспечивается поддержание целостности, можно задать режим каскадного удаления связанных записей и режим каскадного обновления связанных полей. Такие параметры делают возможным в главной таблице, соответственно, удаление записей и изменение значения в ключевом поле, т. к. при этих параметрах система автоматически выполнит необходимые изменения в подчиненных таблицах, обеспечив сохранение свойств целостности базы данных.
В режиме каскадного удаления связанных записей при удалении записи из главной таблицы будут автоматически удаляться все связанные записи в подчиненных таблицах. При удалении записи из главной таблицы выполняется каскадное удаление подчиненных записей на всех уровнях, если этот режим задан на каждом уровне.
В режиме каскадного обновления связанных полей при изменении значения ключевого поля в записи главной таблицы Access автоматически изменит значения в соответствующем поле в подчиненных записях.
Установить в окне Изменение связей (Edit Relationships) (см. рис. 3.49) флажки каскадное обновление связанных полей (Cascade Update Related Fields) и каскадное удаление связанных записей (Cascade Delete Related Records) можно только после задания параметра обеспечения целостности данных.
После создания связей изображения таблиц могут перемещаться в пределах рабочего пространства окна схемы данных. Перемещения и изменения размеров окон со списками полей таблиц в окне схемы данных осуществляются принятыми в Windows способами.
Заметим, если каскадное удаление не разрешено, невозможно удалить запись в главной таблице, если имеются связанные с ней записи в подчиненной.
Смотрим видео:
Вот основное, что мы хотели рассказать на тему «Схема данных в Access».
Дальше будем изучать запросы в Access.
После создания всех таблиц базы данных остаётся установить связи между ними. Для этого необходимо:
1. Щелкнуть на закладке «Таблицы» окна базы данных.
2. В меню Сервисвыбрать пункт Схема данных…
3.В окно Схема данныхдобавить все связываемые таблицы. Для этого открыть меню Связии выбрать пункт Добавить таблицу…или щелкнуть на кнопке в панели инструментов. В появившемся окне Добавление таблицывыделить мышью название нужной таблицы и щелкнуть на кнопке Добавить (рис. 1).
Рис. 1. Добавление таблицы в окно Схема данных.
После этого макет соответствующей таблицы появится в окне Схема данных.Закончив добавление всех нужных таблиц в окно Схемаданных необходимозакрыть окно Добавление таблицыкнопкой Закрыть.
4. Макеты таблиц в окне Схема данныхс помощью мыши расположить нужным образом, используя метод перетаскивания. Настроить размеры макетов таблиц, растягивания их мышью.
5. Для установления связи между двумя таблицами:
а) Щелкнуть мышью на первичном ключе таблицы, находящейся на стороне «1» связи.
б) Нажать левую кнопку мыши и, не отпуская ёё, перенести поле первичного ключа в подчиненную таблицу (при переносе указатель мыши изменяет свой вид).
в) Отпустить левую кнопку мыши над внешним ключом подчиненной таблицы.
6. В появившемся окне Изменение связей будут высвечены имена полей, по которым связываются таблицы. Необходимо отметить пункт Обеспечение целостности данных. При этом Access сделает невозможным запись в подчиненную таблицу такого значения общего поля, которого нет в главнойтаблице (рис. 2).
Рис. 2. Установление связи между таблицами.
После установки целостности данных включаются две дополнительные опции Каскадное обновление связанных полей и Каскадное удаление связанных полей. Первая опция позволяет при обновлении какого-либо значения ключевого поля в главной таблице автоматически изменить его во всех подчиненных таблицах. Вторая опция действует аналогично – удаляя записи из подчиненных таблиц, соответствующих удаленному ключу главной таблицы. Отметив все эти пункты необходимо нажать на кнопку создать.
В окне Схема данныхмежду таблицами устанавливается связь в виде помеченной линии. Для удаления связи выделить ёё мышью (линия приобретает жирные очертания) и нажать кнопку Delete на клавиатуре.
7. Повторить действия п.п. 5-6 для установления всех связей.
8. Закрыть окно Схема данных, ответив «Да » на предложение системы сохранить изменение макета схемы данных.
Для рассматриваемого примера выполним описанную выше процедуру для установления всех связей модели данных. Построенная при этом схема данных будет в точности соответствовать рис. 3.
Замечание. При построении схемы данных таблицы должны быть пустыми.
Рис. 3. Схема данных рассматриваемого примера.
Лекция 6
Поиск информации в таблицах базы данных
Сортировка информации в таблицах
Дня удобства просмотра можно сортировать записи в таблице в определенной последовательности, например, в таблице Шины записи можно отсортировать в порядке убывания её радиуса. Кнопки сортировки на панели инструментов (цепочки команд меню Записи – Сортировка — Сортировка по возрастанию или Сортировка по убыванию) позволяют сортировать столбцы по возрастанию или по убыванию. Прежде чем щелкнуть по кнопке сортировки, следует выбрать поля, используемые для сортировки. Для выбора поля достаточно поместить курсор в любую его запись. После этого щелкните по кнопке сортировки — и данные отобразятся в отсортированном порядке.
Рис. 1. Сортировка таблицы Шинапо полю Радиус
В режиме таблицы можно выделить сразу два или несколько соседних столбцов, а затем выполнить по ним сортировку. По умолчанию в Access сортировка записей начинается с крайнего левого выделенного столбца. При этом записи таблицы будут отсортированы сначала по крайнему левому выделенному столбцу, затем (для одинаковых значений в первом сортируемом столбце) — по второму и т.д. Если необходимо восстановить порядок отображения записей, используется цепочка команд Записи — Удалить фильтр.
Фильтры
Работая с таблицей в оперативном режиме, можно установить фильтр, т.е. задать, логическое выражение, которое позволит выдавать на экран только те записи, для которых это выражение выполняется.
В Access существует три вида фильтрации данных:
Обычный фильтр -используется для выбора искомых значений из списка без просмотра всех записей в таблице или форме, или при указании нескольких условий отбора одновременно (критерий отбора формируется с помощью логического оператора Или).
Для выполнения фильтрации данных необходимо открыть таблицу, а затем в меню в меню Записи активизируем команду Фильтр, а в открывшемся подменю-команду Изменить фильтр. Затем в окне создания фильтра в требуемом поле указывается критерий отбора информации (рис. 2).
Рис. 2. Ввод критерия отбора информации
После выполнения цепочки команд Фильтр — Применить фильтр в таблицу выводятся только те записи, для которых заданное условие выполняется (рис. 3).
Рис. 3. Результаты применения фильтра
Для удаления фильтров и вывода на экран всех записей таблицы предназначена команда Удалить фильтр из меню Записи.
Фильтр по выделенному фрагменту – очень похож на обычный фильтр, только в качестве критерия фильтрации используется выделенное значение одного из полей, и для запуска используется цепочка команд Записи – Фильтр — Фильтр по выделенному.
Дата добавления: 2016-04-06; просмотров: 477;
ПОСМОТРЕТЬ ЕЩЕ:
Для того чтобы было удобно просматривать, создавать, удалять и модифицировать связи между таблицами, в Microsoft Access используется схема данных (Relationships) (рис. 2.27).
Рис. 2.27. Пример схемы данных
Чтобы открыть схему данных, необходимо выполнить команду Сервис, Схема данных (Tools, Relationships). По умолчанию схема будет содержать все таблицы со связями. Поэтому сюда будет включена, например, наша новая таблица «Список рассылки оповещений», которая была связана с таблицей «Клиенты» (Customers) при помощи Мастера подстановок (см. разд. «Использование Мастера подстановок» выше в данной главе).
Чтобы убрать какую-либо таблицу из схемы данных, необходимо щелкнуть правой кнопкой мыши на любом месте этой таблицы и из контекстного меню выбрать команду Скрыть таблицу (Hide table). Например, на рис. 2.27 таблица «Список рассылки оповещений» скрыта.
Замечание
Удаление таблицы из схемы данных не означает удаление ее из базы данных, просто она не присутствует в схеме.
Чтобы вновь добавить в эту схему свернутую таблицу («Список рассылки оповещений») или таблицу, у которой связи еще не установлены, необходимо:
- Щелкнуть правой кнопкой мыши на свободном пространстве схемы данных и из контекстного меню выбрать команду Добавить таблицу (Show table).
- В диалоговом окне Добавление таблицы (Show table) раскрыть вкладку Таблицы (Tables), выбрать из списка таблицу «Список рассылки оповещений», и нажать кнопку Добавить (Add) (рис. 2.28).
Рис. 2.28. Диалоговое окно
Добавление таблицы Замечание
Если нужно добавить к схеме несколько таблиц, придется повторить эту операцию для каждой таблицы.
- Нажать кнопку Закрыть (Close), чтобы закрыть диалоговое окно Добавление таблицы (Show table).
В данном случае связь между таблицами Access строит автоматически. Это происходит тогда, когда две таблицы имеют одинаковые названия связанных полей и согласованные типы данных, причем хотя бы в одной из таблиц связанное поле является ключевым.
Замечание
Согласованные типы данных означают следующее: если ключевое поле имеет тип данных Счетчик (AutoNumber), то соответствующее ему поле в другой таблице должно иметь тип Длинное целое (Long Integer). В остальных случаях типы данных должны просто совпадать.
Если нужная связь автоматически не создана, ее можно создать двумя путями. Первый путь — графический. Следует выбрать в главной таблице поле для связи, нажать левую кнопку мыши и перетащить поле во вторую таблицу. Отпустить левую кнопку мыши над тем полем подчиненной таблицы, с которым устанавливается связь. После этого появится диалоговое окно Изменение связей (Edit Relationships) (рис. 2.29).
Альтернативный вариант — выбрать команду Связи, Изменить связь (Relationships, Edit Relationships) из главного меню Access. Эта команда появляется в меню, когда открыто окно Схема данных (Relationships).
- В диалоговом окне Изменение связей (Edit Relationships) можно выбрать из списков названия связанных таблиц и полей для связывания. Если отношение между таблицами «один-ко-многим», то слева из списка Таблица/запрос (Table/ Query) выбирается главная таблица и поле в этой таблице, а справа из списка Связанная таблица/запрос — подчиненная и соответственно поле в ней. Если отношение «один-к-одному», то порядок таблиц значения не имеет. Если вы устанавливали связь графически, то все поля в списках уже выбраны, и нужно только определить правила ссылочной целостности.
Рис. 2.29. Окно
Изменение связей
- Для этого устанавливают флажок Обеспечение целостности данных (Enforce Referential Integrity) и один или оба флажка: каскадное обновление связанных полей (Cascade Update Related Fields) и каскадное удаление связанных записей (Cascade Delete Related Records) (см. следующий раздел).
- При необходимости можно изменить параметры объединения, для чего требуется нажать кнопку Объединение (Join Type) и выбрать один из переключателей (рис. 2.30):
- Объединение только тех записей, в которых связанные поля обеих таблиц совпадают;
- Объединение ВСЕХ записей из и только тех записей из , в которых связанные поля совпадают;
- Объединение ВСЕХ записей из и только тех записей из , в которых связанные поля совпадают.
По умолчанию устанавливается первый переключатель. Нажать кнопку ОК.
Рис. 2.30. Диалоговое окно
Параметры объединения
- Когда создается новая связь, можно также воспользоваться кнопкой Новое (Create New) и в окне Создание (Create New) ввести имена связываемых таблиц и имена полей, используемых для связи. Нажать кнопку ОК.
- После установки всех параметров связи необходимо нажать кнопку ОК в окне Параметры объединения (Edit Relationship) и закрыть окно Схема данных (Relationship), нажав на кнопку Закрыть в правом верхнем углу окна.