рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Типы связей и ключей в РБД

Типы связей и ключей в РБД - раздел Образование, РАБОТА С БАЗАМИ ДАННЫХ Как Уже Отмечалось, В Бд Все Таблицы Должны Быть Так Или Иначе Связаны Между ...

Как уже отмечалось, в БД все таблицы должны быть так или иначе связаны между собой, чтобы обеспечить целостность данных, создающих информационную модель некой предметной области. Если оказалось, что одна из таблиц в создаваемой БД не имеет связей ни с одной другой таблицей, то в этом случае необходимо создавать новую БД либо рассматривать более широкую предметную область, для которой создается БД.

Связи между таблицами организуются с помощью различных ключей. Связное отношение хранит ключи двух или более объектных отношений, по этим ключам устанавливаются связи между объектами. Связное отношение кроме связывае­мых ключей может иметь и другие атрибуты, которые будут функционально зависеть от этой связи. Ключи в связных отношениях называются внешними ключами, поскольку они являются первичными ключами других отношений.

Каждому внешнему ключу должна соответствовать строка какого-либо объект­ного отношения. Невыполнение этого ограничения может привести к нарушению ссы­лочной целостности данных. Ключ должен ссылаться на объект, который существует.

Перечислим условия и ограничения, накладываемые на отношения реляционной моделью данных, которые позволяют таблицы считать отношениями:

1. Не может быть одинаковых значений для первичных ключей, т.е. все строки таблицы должны быть в целом уникальны и определяться значением первичного ключа однозначно.

2. Все строки таблицы должны иметь одну и ту же структуру, т.е. одно и то же количество атрибутов.

3. Имена столбцов таблицы должны быть различны, а значения столбцов долж­ны быть однотипными.

4. Значения атрибутов должны быть простыми, следовательно, отношения не могут иметь в качестве компонент другие отношения.

5. Должна соблюдаться ссылочная целостность для внешних ключей.

6. Порядок следования строк в таблице несущественен - он лишь влияет на ско­рость доступа к строке.

Хорошо организованная база данных обеспечивает удобный доступ к хранящейся в ней информации. При правильном проектировании базы данных будет меньше затра­чиваться времени и усилий на ввод данных в базу, внесение изменений и извлечение данных из базы.

Этап установки связей между таблицами нужен для того, чтобы ука­зать, какие действия надо предпринимать для объединения содержимого таблиц, составляющих РБД. После того как пользователь установит связи между таблицами, СУБД сможет использовать эти связи для поиска свя­занной информации в разных таблицах базы данных.

В теории РБД существует три типа межтаблич­ных отношений или связей: один-ко-многим, многие-ко-многим и один-к-одному (четвертый возможный тип отношений - многие-к-одному факти­чески сводится к первому типу, так как является его «зеркальным отраже­нием» и в СУБД Access просто совпадает со связью один-ко-многим).

Связь один-ко-многим является наиболее распространенной в реля­ционных базах данных. При таком типе отношений одной записи в первой таблице могут соответствовать несколько записей во второй таблице, од­нако каждой записи во второй таблице соответствует не более одной запи­си в первой таблице, что отражает в полной мере функциональную зави­симость второй таблицы от первой.

Связь многие-ко-многим означает, что каждой записи в первой таб­лице могут соответствовать несколько записей во второй таблице, а каж­дой записи во второй таблице -- несколько записей в первой таблице. В СУБД Access такой тип отношений напрямую не допускается, и во избежа­ние такой ситуации создается еще одна вспомогательная таблица, которая связывается с обеими исходными таблицами связью типа один-ко-многим.

При связи один-к-одному каждой записи в первой таблице может соответствовать не более одной записи во второй таблице, а каждой записи во второй таблице -- не более одной записи в первой таблице. Такой тип межтабличных отношений используется тогда, когда для удобства в работе очень широкую таблицу разбивают на две с повторением одного поля в ка­ждой либо когда из таблицы необходимо выделить часть, к которой нужно обеспечить особый режим допуска (например, конфиденциальные сведе­ния о сотрудниках, содержащиеся в одном или нескольких полях таблицы, к которым должны иметь доступ только определенные лица).

В любом случае наличие связей (отношений) между таблицами второго и третьего типов означает, что база данных спроектирована не со­всем оптимально или же просто содержит ошибки. Хорошо спроектиро­ванная база данных обычно не содержит отношений между таблицами двух последних типов.

Как уже отмечалось выше, основным достоинством любой БД явля­ется способность быстро находить и объединять информацию, хранящую­ся в разных таблицах. Для решения первой задачи каждая таблица в БД должна содержать поле или набор полей, значение которого или совокуп­ность значений которых однозначно определяет каждую запись этой таб­лицы. На языке БД такое поле или совокупность полей называется ключом таблицы, а точнее, первичным ключом таблицы. При этом кандидатами на роль ключа таблицы могут быть любые поля, которые содержат уникаль­ные (неповторяющиеся) значения для каждой записи, т.н. потенци­альные ключи таблицы. Если в роли ключа выступают сразу несколько по­лей, когда в таблице просто нет одного поля с неповторяющимися значе­ниями, то приходится подбирать такую комбинацию полей, значение ко­торой будет уникальным. Такой ключ называется составным клю­чом.

Для решения второй из названных задач -- объединения информации и организации связей между таблицами -- используются поля таблиц, имеющие совпадающие значения. При этом связь один-ко-многим обра­зуется между первичным ключом одной таблицы, которая называется главной, и т.н. внешним, или вторичным, ключом другой таблицы, которая называется подчиненной. Значения внешнего ключа в таблице могут по­вторяться (отсюда термин ко-многим в названии связи), а сам внешний ключ, например поле «Поставщик» в таблице «Товары» или поле «Ин­декс» в таблице «Поставщики», получил такое название потому, что при проектировании (разложении) таблицы на составляющие такое поле спе­циально вводится в вычленяемую таблицу именно для ор­ганизации связей между таблицами и обеспечения целост­ности данных в БД.

Таким образом, в нашей БД «Поставки товаров», состоящей из таб­лиц «Товары», «Поставщики» и «Адреса», необходимо организовать сле­дующие межтабличные связи (ниже мы используем схематичное изобра­жение межтабличных связей, совпадающее с представлением схемы свя­зей в СУБД Access, работа в которой будет рассматриваться в последую­щих разделах пособия, здесь символ ¥ соответствует термину ко-многим):

 
 

 

 


Заметим в заключение, что в БД для оптимизации связей между рас­смотренными выше т.н. базовыми таблицами, каждая из которых облада­ет первичным ключом, могут создаваться и связующие таблицы. Такие таблицы содержат только ключевые поля, представляющие собой внешние ключи, связанные с первичным ключом главной таблицы, а сами не имеют первичного клю­ча. Это т.н. индексные таблицы, преобразующие межтабличные связи типа многие-ко-многим в связи типа один-ко-многим.

После создания совокупности таблиц, удовлетворяющих правилам нормализации, и организации межтабличных связей процесс проектирова­ния БД, проводимый «вручную», без компьютера, заканчивается. В даль­нейшем создание БД проводится с использованием средств соответствующей СУБД.

– Конец работы –

Эта тема принадлежит разделу:

РАБОТА С БАЗАМИ ДАННЫХ

БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНОЛОГИЧЕСКИЙ УНИВЕРСИТЕТ... Кафедра информатики и вычислительной техники...

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Типы связей и ключей в РБД

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

В СУБД ACCESS
  Учебно-методическое пособие для аспирантов и студентов всех специальностей     Минск 2002 УДК 681.9

ПРОЕКТИРОВАНИЕ РЕЛЯЦИОННЫХ БАЗ ДАННЫХ
  Разработка современных текстовых или табличных документов практически с самого начала происходит с использованием соответствующих прикладных программ – текстового редактора или прог

Типы баз данных
Наиболее широко распространенными являются иерархические, сетевые и реляционные модели данных, каждая из которых имеет свою внутреннюю схему построения. Соответствующим образом называ

Создание БД в СУБД Access
    После запуска СУБД Acce

ЗАПРОСЫ В СУБД ACCESS
  Формирование таблиц и заполнение их данными - это основной этап в созда­нии БД. Хотя этот процесс необходим и достаточен с точки зрения хранения данных, он отнюдь не достаточен с то

Запрос на выборку данных
Для создания простого запроса на выборку данных, т.е. выбора только для просмотра необходимых полей таблицы или полей из совокупности связанных таблиц без обработки выбранной информации, сле

Between 15.05.01 And 23.05.01
Для создания сложных условий выборки, определяемых сложными выражениями, куда могли бы входить поля существующих в БД таблиц и других объектов, встроенные в Access функции, операторы, константы и т

Запрос с параметром
Запросами с параметром являются запросы, в которых конкретное значение параметра, входящего в условие на выборку, формируется в диалоговом режиме через специальное окно запроса. Построим з

Итоговые запросы
    Итоговые запросы исполь

Запросы с вычисляемым полем
Как уже обсуждалось выше в пособии (см. раздел 2), таблицы в БД предназначены только для хранения информации и в них в соответствии с правилами нормализации не может быть полей, значения которых яв

Перекрестные запросы
Перекрестные запросы используются в тех случаях, когда необходимо разгруппировать имеющиеся данные по определенным критериям отбора. В перекрестных запросах, кроме обычных операций группировки выбр

ФОРМЫ В СУБД ACCESS
Формы в Access предназначены для отображения в удобном виде на экране мо­нитора данных, хранящихся в исходных таблицах БД или в таблицах, полученных в результате выполнения запросов. Фактиче

Построение диаграмм
    В качестве примера испо

ОТЧЕТЫ В СУБД ACCESS
Отчеты в Access используются для представления данных в легком для понимания и выразительном виде и предназначены в основном для вывода их на печать, а не для отображения на экране. Обычно о

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги