Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
конспект_лек_Ииформатика.doc
Скачиваний:
7
Добавлен:
01.07.2025
Размер:
6 Мб
Скачать
☆

2. Основные понятия реляционных бд: нормализация, связь и ключи.

Принципы нормализации:

  • в каждой таблице БД не должно быть повторяемых полей;

  • в каждой таблице должен быть уникальный идентификатор (первичный ключ);

  • каждому значению первичного ключа должна отвечать достаточная информация о типе сути или об объекте таблицы (например, информация об успеваемости, о группе или студентах);

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

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

Отношения, которые могут существовать между записями двух таблиц:

один - к - одному, каждой записи с одной таблицы отвечает одна запись в другой таблице;

один - ко - многим, каждой записи с одной таблицы отвечает несколько записей другой таблицы;

много - к - одному, множеству записей из одной таблицы отвечает одна запись в другой таблице;

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

Тип отношений в создаваемой связи зависит от способа определения связываемых полей.

Отношение «один-ко-многим» создается в том случае, когда только одно из полей является полем первичного ключа или уникального индекса.

Отношение «один-к-одному» создается в том случае, когда оба связаных поля являются ключевыми или имеют уникальные индексы.

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

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

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

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

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

Существует три типа первичных ключей: ключевые поля счетчика (счетчик), простой ключ и составной ключ.

Ключевые поля счетчика (счетчик) автоматически генерируются.

Простой ключ. Если поле содержит уникальные значения, такие как коды или инвентарные номера, то это поле можно определить как первичный ключ. В качестве ключа можно определить все поля, которые содержат не повторяемые данные или значение Null.

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

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

Программы, которые предназначены для структурирования информации, размещения ее в таблицах и манипулирования данными называются системами управления базами данных (СУБД).

Другими словами СУБД предназначены как для создания и ведения базы данных, так и для доступа к данным. В данное время насчитывается больше 50 типов СУБД для персональных компьютеров. К наиболее распространенным типам СУБД относятся: MS SQL Server, Oracle, Informix, Sybase, DB2, MS Access и т.д.