Тема_3 (1122336), страница 3

Файл №1122336 Тема_3 (Презентации лекций С.Д. Кузнецова PDF) 3 страницаТема_3 (1122336) страница 32019-05-10СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 3)

Кузнецов. Базы данных.33 Реляционная моделФундаментальные свойства отношений (14)Первая нормальная форма (2)Однако и в истинной реляционной модели данных, и вмодели данных SQL теперь можно определять отношения(таблицы), значениями атрибутов (столбцов) которыхявляются отношения (мультимножества строк)Скорее всего, это произошло по двум причинам: Во-первых, в течение многих лет реляционную модельданных (и модель SQL) многие люди критиковали засложность представления иерархически организованныхданных. Понятно, что при наличии механизма вложенныхотношений иерархические данные представляются вполнеестественно. Во-вторых, оказалось, что при тщательном определениисистемы типов, наличие атрибутов (столбцов) созначениями-отношениями никак не влияет на методы,разработанные в исходной теории реляционных БД25.09.2009С.Д.

Кузнецов. Базы данных.34 Реляционная моделФундаментальные свойства отношений (15)Первая нормальная форма (3)Тем не менее, доводы Кодда, которые привели к появлениюпервой нормальной формы отношений, не утратили смыслаНенормализованное отношениеОТДЕЛЫ-СЛУЖАЩИЕОтношение СЛУЖАЩИЕ:нормализованный вариантотношения ОТДЕЛЫСЛУЖАЩИЕ25.09.2009С.Д.

Кузнецов. Базы данных.35 Реляционная моделФундаментальные свойства отношений (16)Первая нормальная форма (4)Нормализованные по Кодду отношениясоставляют основу классического реляционногоподхода к организации баз данныхОни обладают некоторыми ограничениями (нелюбую информацию удобно представлять в видеплоских таблиц), но существенно упрощаютманипулирование даннымиРассмотрим, например, два идентичныхоператора занесения кортежа:Зачислить служащего Кузнецова (пропуск номер 3000,зарплата 115,000) в отдел номер 320 иЗачислить служащего Кузнецова (пропуск номер 3000,зарплата 115,000) в отдел номер 31025.09.2009С.Д.

Кузнецов. Базы данных.36 Реляционная моделФундаментальные свойства отношений (17)Первая нормальная форма (5)Если информация о сотрудниках представлена ввиде отношения СЛУЖАЩИЕ, оба операторабудут выполняться одинаково:Если же работать с ненормализованнымотношением ОТДЕЛЫ-СЛУЖАЩИЕ, то:вставить кортеж в отношение СЛУЖАЩИЕпервый оператор выразится в занесение кортежа,а второй - в добавление кортежа с первичным ключом310 в значение-отношение атрибута ОТДЕЛПри работе с ненормализованнымиотношениями аналогичные затруднениявозникают при выполнении операций удаления имодификации кортежей25.09.2009С.Д. Кузнецов.

Базы данных.37 Реляционная моделРеляционная модель данных (1)Общая характеристика (1)В структурной части реляционной моделиданных фиксируется, что единственной родовойструктурой данных, используемой вреляционных БД, является нормализованное nарное отношениеОпределяются понятия доменов, атрибутов,кортежей, заголовка, тела и переменнойотношенияПо сути дела, до сих пор мы рассматривалиименно понятия и свойства структурнойсоставляющей реляционной модели25.09.2009С.Д.

Кузнецов. Базы данных.38 Реляционная моделРеляционная модель данных (2)Общая характеристика (2)В манипуляционной части реляционной моделиопределяются два фундаментальных механизмаманипулирования реляционными БД – реляционная алгебраи реляционное исчислениеПервый механизм базируется в основном на классическойтеории множеств (с некоторыми уточнениями идобавлениями), а второй – на классическом логическомаппарате исчисления предикатов первого порядкаМы кратко рассмотрели алгебру Кодда ранее и обсудим всеэти механизмы более подробно в следующей теме, а покалишь заметим, что основной функцией манипуляционнойчасти реляционной модели является обеспечение мерыреляционности любого конкретного языка реляционных БД: язык называется реляционным, если он обладает неменьшей выразительностью и мощностью, чем реляционнаяалгебра или реляционное исчисление25.09.2009С.Д.

Кузнецов. Базы данных.39 Реляционная моделРеляционная модель данных (3)Целостность сущности и ссылок (1)В целостной части реляционной модели данных фиксируются двабазовых требования целостности, которые должныподдерживаться в любой реляционной СУБДПервое требование называется требованием целостностисущности (entity integrity)Объекту или сущности реального мира в реляционных БДсоответствуют кортежи отношенийКонкретно, требование состоит в том, что любой кортеж любогозначения-отношения любой переменной отношения должен бытьотличим от любого другого кортежа этого значения отношения посоставным значениям заранее определенного множестваатрибутов переменной отношения, т.е., другими словами, любая переменная отношения должно обладать первичнымключомКак мы видели, это требование автоматически удовлетворяется,если в системе не нарушаются базовые свойства отношений25.09.2009С.Д.

Кузнецов. Базы данных.40 Реляционная моделРеляционная модель данных (4)Целостность сущности и ссылок (2)На самом деле, требование целостности сущностиполностью звучит следующим образом:у любой переменной отношения должен существоватьпервичный ключ, и никакое значение первичного ключа вкортежах значения-отношения переменной отношения недолжно содержать неопределенных значенийЧтобы эта формулировка была полностью понятна,мы должны хотя бы кратко обсудить понятиенеопределенного значения (NULL)Конечно, теоретически любой кортеж, заносимый всохраняемое отношение, должен содержать всехарактеристики моделируемой им сущностиреального мира, которые мы хотим сохранить в базеданных25.09.2009С.Д.

Кузнецов. Базы данных.41 Реляционная моделРеляционная модель данных (5)Целостность сущности и ссылок (3)Однако на практике не все эти характеристики могутбыть известны к тому моменту, когда требуетсязафиксировать сущность в базе данныхПростым примером может быть процедура принятияна работу человека, размер заработной платыкоторого еще не определенВ этом случае работник отдела кадров, которыйзаносит в отношение СЛУЖАЩИЕ кортеж,описывающий нового служащего, просто не можетобеспечить значение атрибута СЛУ_ЗАРПлюбое значение домена РАЗМЕРЫ_ВЫПЛАТ будет невернохарактеризовать зарплату нового сотрудникаЭдгар Кодд предложил использовать в таких случаяхнеопределенные значения25.09.2009С.Д.

Кузнецов. Базы данных.42 Реляционная моделРеляционная модель данных (6)Целостность сущности и ссылок (4)Неопределенное значение не принадлежит никакомутипу данных и может присутствовать среди значенийлюбого атрибута, определенного на любом типеданных (если это явно не запрещено приопределении атрибута)Если a – это значение некоторого типа данных илиNULL,op – любая двуместная “арифметическая” операцияэтого типа данных (например, “+”), аlop – операция сравнения значений этого типа(например, “=”), то по определению:a op NULL = NULLNULL op a = NULLa lop NULL = unknownNULL lop a = unknown25.09.2009С.Д. Кузнецов. Базы данных.43 Реляционная моделРеляционная модель данных (7)Целостность сущности и ссылок (5)Здесь unknown – это третье значение логического,или булевского типа, обладающее следующимисвойствами:NOT unknown = unknowntrue AND unknown = unknowntrue OR unknown = truefalse AND unknown = falsefalse OR unknown = unknownНапомним, что операции AND и OR являютсякоммутативнымиТребование целостности сущности означает, чтопервичный ключ должен полностьюидентифицировать каждую сущность, а поэтому всоставе любого значения первичного ключа недопускается наличие неопределенных значений25.09.2009С.Д.

Кузнецов. Базы данных.44 Реляционная моделРеляционная модель данных (8)Целостность сущности и ссылок (6)Второе требование называется требованиемцелостности по ссылкам (referential integrity) и являетсянесколько более сложнымОчевидно, что при соблюдении нормализованности поКодду отношений сложные сущности реального мирапредставляются в реляционной БД в виде несколькихкортежей нескольких отношенийНапример, представим, что требуется представить вреляционной базе данных сущность ОТДЕЛ с атрибутамиОТД_НОМЕР (номер отдела), ОТД_РАЗМ (количествослужащих) и ОТД_СЛУ (набор сотрудников отдела). Длякаждого служащего нужно хранить СЛУ_НОМЕР (номерсотрудника), СЛУ_ИМЯ (имя сотрудника) и СЛУ_ЗАРП(заработная плата сотрудника)25.09.2009С.Д. Кузнецов.

Базы данных.45 Реляционная моделРеляционная модель данных (9)Целостность сущности и ссылок (7)Как мы увидим позже, при правильном проектированиисоответствующей БД в ней появятся два отношения:ОТДЕЛЫ { ОТД_НОМЕР, ОТД_РАЗМ } (первичный ключ –{ОТД_НОМЕР}) и СОТРУДНИКИ { СЛУ_НОМЕР,СЛУ_ИМЯ, СЛУ_ЗАРП, СЛУ_ОТД_НОМ ) (первичный ключ– {СЛУ_НОМЕР})Как видно, атрибут СЛУ_ОТД_НОМ появляется вотношении СЛУЖАЩИЕ не потому, что номер отделаявляется собственным свойством сотрудника, а лишь длятого, чтобы иметь возможность восстановить принеобходимости полную сущность ОТДЕЛЗначение атрибута СЛУ_ОТД_НОМ в любом кортежеотношения СЛУЖАЩИЕ должно соответствоватьзначению атрибута ОТД_НОМ в некотором кортежеотношения ОТДЕЛЫ25.09.2009С.Д.

Кузнецов. Базы данных.46 Реляционная моделРеляционная модель данных (10)Целостность сущности и ссылок (8)Атрибут такого рода (возможно, составной) называетсявнешним ключом (foreign key), поскольку его значенияоднозначно характеризуют сущности, представленныекортежами некоторого другого отношеният.е. задают значения их первичного ключаКонечно, внешний ключ может быть составным, т.е.состоять из нескольких атрибутовГоворят, что отношение, в котором определен внешнийключ, ссылается на соответствующее отношение, вкотором такой же атрибут является первичным ключом25.09.2009С.Д.

Кузнецов. Базы данных.47 Реляционная моделРеляционная модель данных (11)Целостность сущности и ссылок (9)В полной форме требование целостности поссылкам, или требование целостности внешнегоключа состоит в том, что для каждого значениявнешнего ключа, появляющегося в кортежезначения-отношения ссылающейся переменнойотношения,либо в значении-отношении переменной отношения, накоторую ведет ссылка, должен найтись кортеж с таким жезначением первичного ключа,либо значение внешнего ключа должно быть полностьюнеопределенным (т.е. ни на что не указывать)Для нашего примера это означает, что если длясотрудника указан номер отдела, то этот отделдолжен существовать25.09.2009С.Д. Кузнецов.

Характеристики

Тип файла
PDF-файл
Размер
360,36 Kb
Тип материала
Предмет
Высшее учебное заведение

Список файлов лекций

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6376
Авторов
на СтудИзбе
309
Средний доход
с одного платного файла
Обучение Подробнее