Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СУБД 1-й модуль.docx
Скачиваний:
1
Добавлен:
20.08.2019
Размер:
42.88 Кб
Скачать

11)Ключи и связи

Customers

*CustomersID о->

CompanyName

City

Country

Orders

*CustomerID

OrderId

OrderDate

Freight

ShipAddres


Поскольку записи в таблице неупорядочены, как правило, требуется1 или несколько полей для уникальной идентификации каждой записи – такое поле (поля) называется первичным ключом (PK)

PK любой таблицы обязан содержать уникальные, непустые значения для каждой записи.

*Если PK состоит больше, чем из 1 поля, он называется составным первичным ключом.

Как правил, любая СУБД состоит из нескольких связанных таблиц.

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

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

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

*Если каждый клиент в таблице customer может разместить только 1 заказ, то говорят, что эти 2 таблицы связаны соотношением 1:1.

*Если каждый клиент в таблице customer может разместить 0,1 или много заказов, то эти 2 таблицы связаны соотношением 1: многим или соотношением master-detail.

*Если группе записей из таблицы А соответствует множество записей из таблицы В, то такое соотношение называется многие ко многим(many-to-many)

Наиболее часто используется (many-to-many).

* Таблица, содержащая внешний ключ называется detail-таблицей.

*Таблица, содержащая PK, определяющий возможные значения внешних ключей называется master-таблицей.

*Группа связанных таблиц называется схемой БД.

*Информация о таблицах, полях, первичных и внешних ключах, а так же иных объектах БД называется метаданными.

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

12) Ссылочная целостность

– формируется в виде правил, которые выполняют современные СУБД:

1) Первичный ключ любой таблицы должен содержать непустые, уникальные значения для данной таблицы. Если СУБД контролирует уникальность PK, то при попытке присвоить PK значение, уже имеющееся в другой записи СУБД генерирует сообщение об ошибке, которое может быть передано в приложение, с помощью которого пользователь манипулирует с данными.

2) Для таблицы one-to-many:

Внешний ключ detail-таблицы должен содержать только те значения, которые имеются среди значений первичного ключа master-таблицы.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]