170 likes | 418 Views
По программе ФПК НГТУ. Безопасность баз данных. Тема: Ключи в реляционных базах данных Менжулин Сергей Алексеевич ст. преподаватель кафедры ВТ НГТУ. Содержание. Ключи в базах данных потенциальные первичные естественные суррогатные Ссылочная целостность внешние ключи
E N D
По программе ФПК НГТУ Безопасность баз данных Тема: Ключи в реляционных базах данных Менжулин Сергей Алексеевич ст. преподаватель кафедры ВТ НГТУ
Содержание • Ключи в базахданных • потенциальные • первичные • естественные • суррогатные • Ссылочная целостность • внешние ключи • ссылочные действия
Понятие ключа Ключ – подмножество атрибутов отношения, удовлетворяющее требованию уникальности
Потенциальные ключи Отношение А: Список студентов K1 = {Фамилия, Имя, Отчество} K2 = {№ студенч.} K3 = {№ студенч., Год пост.}
Потенциальные ключи Подмножество атрибутов K отношения A называют потенциальным ключом, если K обладает следующими свойствами: • уникальности • неизбыточности
Первичный ключ Потенциальные ключи Альтернативные ключи Первичный ключ
Выбор первичного ключа Предпочтения • уникальные значения • неинтеллектуальный • неизменяемость во времени • одноатрибутность • числовой
Первичные ключи в SQL Требование уникальности PRIMARY KEY = UNIQUE + NOT NULL Требование определенности
Пример создания первичного ключа в SQL CREATE TABLE t (id SERIAL PRIMARY KEY, name VARCHAR); ALTER TABLE books ADD PRIMARY KEY (title, author); ALTER TABLE books DROP CONSTRAINT "books_pkey";
Естественные ключи Достоинства • существуют почти всегда • несут смысловую нагрузку Недостатки • могут изменяться • нет гарантии уникальности
Суррогатные ключи Отношение А: Список студентов с естественными ключами Отношение А: Список студентов суррогатным ключом
Суррогатные ключи Достоиства • гарантируют уникальность • легко обрабатываются Недостатки • нет смысловой нагрузки
Ссылочная целостность Отношение А: Список студентов Отношение B: Список экзаменов
Внешние ключи Внешний ключ FK– подмножество атрибутов некоторой переменной отношения B, значения которых должны совпадать со значениями некоторого потенциального ключа CKнекоторой переменной отношения A
Главные и подчиненные отношения Отношение B: Список студентов Отношение A: Список экзаменов CK(Ключ) FC(Студент) FK → CK Подчиненное (дочернее) Главное (родительское)
Ссылочные действия • Варианты • удалять (CASCADE) • запретить (RESTRICT) • игнорировать (NO ACTION)
Безопасность баз данных Тема: Ключи в реляционных базах данных Менжулин Сергей Алексеевич ст. преподаватель кафедры ВТ НГТУ