Введение в системы управления базами данных




Глава 3. Целостность реляционных данных


    Глава 3. Целостность реляционных данных
    Глава 3. Целостность реляционных данных Во второй части реляционной модели данных определяются два ограничения, которые должны выполняться в любой реляционной базе данных. Это: Целостность сущност...
    Null-значения
    Null-значения Основное назначение баз данных состоит в том, чтобы хранить и предоставлять информацию о реальном мире. Для представления этой информации в базе данных используются привычные для про...
    Трехзначная логика (3VL)
    Трехзначная логика (3VL) Т.к. null-значение обозначает на самом деле тот факт, что значение неизвестно, то любые алгебраические операции (сложение, умножение, конкатенация строк и т.д.) должны дав...
    Таблица 1
    Таблица 1 AND F T U F F F F T F T U U F U U Таблица 1 Таблица истинности AND...
    Таблица 2
    Таблица 2 OR F T U F F T U T T T T U U T U Таблица 2 Таблица истинности OR...
    Таблица 3
    Таблица 3 NOT F T T F U U Таблица 3 Таблица истинности NOT Имеется несколько парадоксальных следствий применения трехзначной логики. Парадокс 1. Null-значение не равно самому себе. Действительно,...
    Потенциальные ключи
    Потенциальные ключи По определению, тело отношения есть множество кортежей, поэтому отношения не могут содержать одинаковые кортежи. Это значит, что каждый кортеж должен обладать свойством уникаль...
    Определение 1
    Определение 1 . Пусть дано отношение . Подмножество атрибутов отношения будем называть потенциальным ключом , если обладает следующими свойствами: Свойством уникальности - в отношении не может быт...
    Таблица 4
    Таблица 4 Табельный номер Фамилия Зарплата 1 Иванов 1000 2 Петров 2000 3 Сидоров 3000 Таблица 4 Отношение "Сотрудники" При первом взгляде на таблицу, изображающую это отношение, может показаться,...
    Таблица 5
    Таблица 5 A B C 1 Иванов 1000 2 Петров 2000 3 Сидоров 3000 Предъявим кому-нибудь эту таблицу и не сообщим смысл наименований атрибутов. Очевидно, что невозможно судить, не понимая смысла данных, м...
    Целостность сущностей
    Целостность сущностей Т.к. потенциальные ключи фактически служат идентификаторами объектов предметной области (т.е. предназначены для различения объектов), то значения этих идентификаторов не могу...
    Внешние ключи
    Внешние ключи Различные объекты предметной области, информация о которых хранится в базе данных, всегда взаимосвязаны друг с другом. Например, накладная на поставку товара содержит список товаров...
    Таблица 6
    Таблица 6 Номер поставщика Наименование поставщика Номер детали Наименование детали Поставляемое количество 1 Иванов 1 Болт 100 1 Иванов 2 Гайка 200 1 Иванов 3 Винт 300 2 Петров 1 Болт 150 2 Петро...
    Таблица 7
    Таблица 7 Номер поставщика Наименование поставщика 1 Иванов 2 Петров 3 Сидоров Таблица 6 Отношение "Поставщики"...
    Таблица 8
    Таблица 8 Номер детали Наименование детали 1 Болт 2 Гайка 3 Винт Таблица 7 Отношение "Детали"...
    Таблица 9
    Таблица 9 Номер поставщика Номер детали Поставляемое количество 1 1 100 1 2 200 1 3 300 2 1 150 2 2 250 3 3 1000 Таблица 8 Отношение "Поставки" В отношении "Поставки" атрибуты "Номер поставщика" и...
    Определение 2
    Определение 2 . Пусть дано отношение . Подмножество атрибутов отношения будем называть внешним ключом , если: Существует отношение ( и не обязательно различны) с потенциальным ключом . Каждое знач...
    Целостность внешних ключей
    Целостность внешних ключей Т.к. внешние ключи фактически служат ссылками на кортежи в другом (или в том же самом) отношении, то эти ссылки не должны указывать на несуществующие объекты. Это опреде...
    Замечания к правилам целостности сущностей и внешних ключей
    Замечания к правилам целостности сущностей и внешних ключей На самом деле приведенные правила целостности сущностей и внешних ключей прямо следуют из определений понятий "потенциальный ключ" и "вн...
    Операции, могущие нарушить ссылочную целостность
    Операции, могущие нарушить ссылочную целостность Ссылочная целостность может нарушиться в результате операций, изменяющих состояние базы данных. Таких операций три - вставка, обновление и удаление...
    Для родительского отношения
    Для родительского отношения Вставка кортежа в родительском отношении . При вставке кортежа в родительское отношение возникает новое значение потенциального ключа. Т.к. допустимо существование корт...
    Для дочернего отношения
    Для дочернего отношения Вставка кортежа в дочернее отношение . Нельзя вставить кортеж в дочернее отношение, если вставляемое значение внешнего ключа некорректно. Вставка кортежа в дочернее отношен...
    Стратегии поддержания ссылочной целостности
    Стратегии поддержания ссылочной целостности Существуют две основные стратегии поддержания ссылочной целостности : RESTRICT (ОГРАНИЧИТЬ) - не разрешать выполнение операции, приводящей к нарушению с...
    Применение стратегий поддержания ссылочной целостности
    Применение стратегий поддержания ссылочной целостности Рассмотрим, как применяются стратегии поддержания ссылочной целостности при выполнении операций модификации базы данных....
    При обновлении кортежа в родительском отношении
    При обновлении кортежа в родительском отношении Допустимые стратегии: RESTRICT (ОГРАНИЧИТЬ) - не разрешать обновление, если имеется хотя бы один кортеж в дочернем отношении, ссылающийся на обновля...
    При удалении кортежа в родительском отношении
    При удалении кортежа в родительском отношении Допустимые стратегии: RESTRICT (ОГРАНИЧИТЬ) - не разрешать удаление, если имеется хотя бы один кортеж в дочернем отношении, ссылающийся на удаляемый к...
    При вставке кортежа в дочернее отношение
    При вставке кортежа в дочернее отношение Допустимые стратегии: RESTRICT (ОГРАНИЧИТЬ) - не разрешать вставку, если внешний ключ во вставляемом кортеже не соответствует ни одному значению потенциаль...
    При обновлении кортежа в дочернем отношении
    При обновлении кортежа в дочернем отношении Допустимые стратегии: RESTRICT (ОГРАНИЧИТЬ) - не разрешать обновление, если внешний ключ в обновляемом кортеже становится не соответствующим ни одному з...
    Выводы
    Выводы Современные СУБД допускают использование null-значений , т.к. данные часто бывают неполными или неизвестными. Споры о допустимости использования null-значений ведутся до сих пор. Использова...








Начало