Вы на НеОфициальном сайте факультета ЭиП

На нашем портале ежедневно выкладываются материалы способные помочь студентам. Курсовые, шпаргалки, ответы и еще куча всего что может понадобиться в учебе!
Главная Контакты Карта сайта
 
Где мы?
» » » ТЕМА 6. ПРОЕКТИРОВАНИЕ МНОГОТАБЛИЧНОЙ БАЗЫ ДАННЫХ

Реклама

Вот База данных ГИБДД

ТЕМА 6. ПРОЕКТИРОВАНИЕ МНОГОТАБЛИЧНОЙ БАЗЫ ДАННЫХ

Просмотров: 6631 Автор: admin

ТЕМА 6. ПРОЕКТИРОВАНИЕ МНОГОТАБЛИЧНОЙ БАЗЫ ДАННЫХ

Урок 6.1. Установление связей между таблицами 
Краткая справка
О целостности БД.
Целостность данных – комплекс правил, обеспечивающих защиту данных от разрушения из-за несогласованных изменений или отказа системы (см. Приложение 4). 
Для таблиц с установленным ключевым полем в каждой из них возможно создание определённых взаимоотношений. MS Access использует эти взаимоотношения для связывания данных в каждом новом запросе, форме или отчёте, включающих связанные таблицы. Связи в базах данных обычно описываются в терминах базовая / подчинённая таблица. Создать связь между таблицами можно, если в них есть совпадающие поля (см. Приложение 4). Связь создается парой полей, одно из которых находится в базовой таблице, а другое – в подчинённой. Они могут содержать совпадающее значение. Когда значение в связанном поле записи базовой таблицы совпадает со значением в связанном поле подчинённой таблицы, эти две записи называются связанными. MS Access не требует жёсткого соответствия между базовыми и подчинёнными записями. Если при создании связи не наложено условие целостности данных, в структуре базы могут присутствовать базовые записи без подчинённых и подчинённые записи без базовых. Если же условие целостности данных установлено, то не допускается существование подчинённой записи без наличия соответствующей ей базовой записи. Это приводит к невозможности изменения значения ключевого поля в записи или удаления записи в базовой таблице до тех пор, пока существуют связанные с ней записи в подчинённой таблице. 
В MS Access возможно создание двух типов связей:
отношение «один-к-одному» или отношение «один-ко-многим».
Если ни одно из связываемых полей не является ключевым или если типы данных в связываемых полях различны, то MS Access не может установить природу связи, и такая связь описывается, как «не определено». Однако если связанное поле базовой таблицы является ключевым, то тип связи определяется по следующим правилам: 
• если в связанном поле подчинённой таблицы содержится только уникальное значение, предполагается, что имеет место связь типа «один-к-одному»; 
• если в подчинённой таблице содержатся повторяющиеся значения, предполагается, что имеет место связь типа «один-ко-многим». Для установления отношения «многие-ко-многим» необходимо создать связующую таблицу, содержащую ключевые поля обеих связываемых таблиц. Независимо от того, какой тип связи существует между таблицами, можно указать, какие записи будут отображаться при выводе в таблице совместной информации. Имеются следующие варианты: 
• включение только тех записей, в которых связанные поля обеих таблиц совпадают. В этом случае записи, не имеющие соответствия в другой таблице, исключаются; 
• включение всех записей из базовой таблицы независимо от того, имеются ли соответствующие им записи в подчинённой таблице, и исключение тех записей подчинённой таблицы, для которых нет соответствия в базовой таблице. В этом случае поля не соотнесённых записей подчинённой таблицы остаются пустыми, а некоторые записи из подчинённой таблицы могут не встретиться; 
• включение всех записей из подчинённой таблицы независимо от того, имеются ли соответствующие им записи в базовой таблице, и исключение тех записей базовой таблицы, для которых нет соответствия в подчинённой таблице. В этом случае поля не соотнесённых записей базовой таблицы остаются пустыми, а некоторые записи из базовой таблицы могут не встретиться. 

Учебное задание 6.1
Используя возможности MS Access, установите связи между созданными таблицами Клиенты, Агенты и Договора базы данных STRAXOV. 

Технология работы выполнения учебного задания 6.1
1. Откройте ранее созданную базу данных STRAXOV.MDB. В диалоговом окне «База данных: STRAXOV» появляется список таблиц: Агенты, Договора, Клиенты. 
2. Задайте ключевые поля в таблицах Агенты и Клиенты. В качестве ключевого поля выберите поля «Номер клиента» в таблице Клиенты и «Номер агента» в таблице Агенты. Для этого выполните следующие действия: 
• откройте таблицу Клиенты в режиме конструктора, выделите поле «Номер клиента» и нажмите кнопку «ключ» на панели инструментов (рис. 6.1); 
• откройте таблицу Агенты в режиме конструктора, выделите поле «Номер агента» и нажмите кнопку «ключ» на панели инструментов. 
3. Расположите две таблицы базы данных в окне «Схема данных». Для этого выполните команду меню СЕРВИС/ Схема данных... После этих действий на экран выводится окно «Схема данных», поверх которой располагается окно «Добавить таблицу». 
4. Добавьте таблицы в окно «Схема данных». Для этого:
• в окне «Добавление таблицы» из списка таблиц выберите последовательно все три таблицы (установите курсор на имя таблицы и нажмите кнопку «Добавить»). Этого же результата можно добиться, если выполнить команду СВЯЗИ/ Добавить таблицу; 
• таблицы расположатся в окне в произвольном порядке. После этого нажмите кнопку «Закрыть» . 
5. Установите связи между таблицами Договора и Клиенты. Для этого:
• протащите указатель мыши от поля «Номер клиента» таблицы Клиенты к полю «Номер клиента» таблицы Договора; 
• в появившемся диалоговом окне «Связи» установите флажок
«Обеспечение целостности данных» (декларируется тип отношения «один-ко-многим») и нажмите кнопку «Создать». 
6. Установите связь между таблицами Договора и Агенты. Для этого:
• протащите указатель мыши от поля «Номер агента» таблицы Агенты к полю «Номер агента» таблицы Договора; 
• в появившемся диалоговом окне «Связи» установите флажок
«Обеспечение целостности данных», (декларируется тип отношения «один-ко-многим») и нажмите кнопку «Создать». Визуальным результатом будет линия связи.  
7. Сохраните установленные между таблицами связи, выбрав пункт меню ФАЙЛ/ Сохранить и выйдите из режима схемы данных: ФАЙЛ/ Закрыть.  
8. Закройте базу данных, выполнив команду меню ФАЙЛ/ Закрыть.

Контрольные вопросы
1. Могут ли записи в ключевом поле иметь одинаковые значения?
2. Могут ли отличаться типы полей, между которыми устанавливается связь?
3. Может ли одна таблица иметь несколько внешних ключей?
4. Какова может быть причина того, что тип отношений между полями «Номер агента» в таблицах Договора и Агенты оказывается не определённым? 
5. Почему в учебном задании 6.1 использовался тип отношений «один-ко-многим»? 

Информация

Комментировать статьи на нашем сайте возможно только в течении 60 дней со дня публикации.

Популярные новости

Статистика сайта



Rambler's Top100



 
Copyright © НеОфициальный сайт факультета ЭиП