Разделы презентаций


05 Целостность реляционной модели.ppt

ОпределенияЦелостность – соответствие информационной модели предметной области, хранимой в базе данных, объектам реального мира и взаимосвязям в каждый момент времени.

Слайды и текст этой презентации

Слайд 1Базы данных
Целостность реляционной модели данных

Базы данныхЦелостность реляционной модели данных

Слайд 2Определения
Целостность – соответствие информационной модели предметной области, хранимой в базе

данных, объектам реального мира и взаимосвязям в каждый момент времени.

ОпределенияЦелостность – соответствие информационной модели предметной области, хранимой в базе данных, объектам реального мира и взаимосвязям в

Слайд 3Аспекты целостности
Три аспекта целостности:
Структурная целостность (обеспечивается реляционной моделью данных): - Наличие

первичного ключа - Отсутствие дубликатов кортежей - Отсутствие зависимости от порядка кортежей
Ссылочная

целостность (обеспечивается СУБД) – выполняется одно из двух правил: 1) При удалении кортежа из родительского отношения, удаляются все связанные с ним кортежи подчиненного отношения (каскадное удаление) 2) При удалении кортежа из родительского отношения, на место ключа в связанных кортежах подчиненного отношения ставится значение NULL.
Семантическая целостность (обеспечивается разработчиком и соответствующими средствами СУБД): Автоматическое выполнение условий (бизнес-правил), определенных в предметной области. Например: возраст читателя не менее 17 лет, читатель не может брать более 5 книг, у читателя должен быть или домашний, или служебный телефон, и т.д.
Аспекты целостностиТри аспекта целостности:Структурная целостность (обеспечивается реляционной моделью данных): - Наличие первичного ключа - Отсутствие дубликатов кортежей

Слайд 4Пути поддержания целостности БД
Два пути поддержания целостности БД:
Декларативный путь –

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

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

Слайд 5Декларативная реализация целостности
CREATE TABLE ( [,… n])

элемента таблицы> ::= |

::= <имя столбца> <тип данных> [<значение по умолчанию>] [<ограничения столбца>]
<значение по умолчанию> ::= [DEFAULT <выражение>] | [IDENTITY (<нач.значение>, <приращение>)]
<ограничение столбца> ::= [CONSTRAINT <имя ограничения>] { [NULL | NOT NULL] [ {PRIMARY KEY | UNIQUE} | [ [FOREIGN KEY] REFERENCES <имя таблицы> (<имя столбца>) ] [ON DELETE {CASCADE | NO ACTION}]
[ON UPDATE {CASCADE | NO ACTION}] ] |
CHECK <логическое выражение>}
Декларативная реализация целостностиCREATE TABLE  ( [,… n]) ::=    | ::=

Слайд 6Декларативная реализация целостности
::= [ CONSTRAINT ]

{ [ { PRIMARY KEY | UNIQUE } {

( <столбец>[ ,...n ] ) } ] | FOREIGN KEY ( <столбец>[ ,...n ] ) REFERENCES <родительская таблица>[ ( <столбец ссылки>[ ,...n ] ) ] [ ON DELETE { CASCADE | NO ACTION } ] [ ON UPDATE { CASCADE | NO ACTION } ] |
CHECK (<логическое выражение>)}
Декларативная реализация целостности ::= [ CONSTRAINT ]   { [ { PRIMARY KEY | UNIQUE }

Слайд 7Декларативная реализация целостности
Концептуальная схема базы данных «Библиотека»
Publications =

author, public_year, pages> (ISBN – уникальный код издания, название, автор,

год издания, количество страниц)
Readers = (номер читательского билета, фамилия читателя, имя, отчество, номер служебного телефона, номер домашнего телефона)
Exemplars = (инвентарный номер – естественный первичный ключ, ISBN издания, номер читательского билета, дата выдачи)
Декларативная реализация целостностиКонцептуальная схема базы данных «Библиотека»Publications =  (ISBN – уникальный код издания, название, автор, год

Слайд 8Декларативная реализация целостности
CREATE TABLE Publications
(
isbn VARCHAR(14) NOT NULL PRIMARY KEY,
title

VARCHAR(120) NOT NULL,
author VARCHAR(30) NULL,
public_year INT DEFAULT YEAR(GETDATE()) CHECK(public_year >=

YEAR(GETDATE()) -100 AND public_year <= YEAR(GETDATE())),
pages INT CHECK(pages >= 5 AND pages <= 2000)
);
Декларативная реализация целостностиCREATE TABLE Publications(isbn VARCHAR(14) NOT NULL PRIMARY KEY,title VARCHAR(120) NOT NULL,author VARCHAR(30) NULL,public_year INT DEFAULT

Слайд 9Декларативная реализация целостности
CREATE TABLE Exemplars
(
inv VARCHAR(10) NOT NULL PRIMARY KEY,


isbn VARCHAR(14) NOT NULL FOREIGN KEY REFERENCES Publications(isbn),
reader_id INT

NULL, /* нужна ссылка на Readers, но еще нет такой таблицы*/
date_out DATETIME
)
Декларативная реализация целостностиCREATE TABLE Exemplars(inv VARCHAR(10) NOT NULL PRIMARY KEY, isbn VARCHAR(14) NOT NULL  FOREIGN KEY

Слайд 10Декларативная реализация целостности
CREATE TABLE Readers
(
reader_id INT NOT NULL PRIMARY KEY

IDENTITY,
last_name VARCHAR(50) NOT NULL,
first_name VARCHAR(50) NOT NULL,
second_name VARCHAR(50) NULL,
work_phone

CHAR(11),
home_phone CHAR(11),
CONSTRAINT CK_phone CHECK(work_phone IS NOT NULL OR home_phone IS NOT NULL)
)

/* Установление ссылки */
ALTER TABLE dbo.Exemplars ADD CONSTRAINT FK_Exemplars_Readers FOREIGN KEY (reader_id) REFERENCES Readers(reader_id)
Декларативная реализация целостностиCREATE TABLE Readers(reader_id INT NOT NULL  PRIMARY KEY  IDENTITY, last_name VARCHAR(50) NOT NULL,first_name

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

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


Для правообладателей

Яндекс.Метрика