Общая часть (часть 2) (2015) (by Кибитова) (1161598), страница 45
Текст из файла (страница 45)
Фундаментальныесвойстваотношений.атрибуты,которыебезСУБДсамапринимаетрешениеотом,вкакомфизическомпорядкеследуетхранитьуникальности,тосуществуетиминимальныйнаборатрибутов,обладающийоднозначногоопределениякортежа.Немногопозженемыпокажем,почемусвойствоТосвойство,чтотелолюбогоотношенияникогдасодержиткортежейоднозначногоопределениякортежа.Немногопозжемыпокажем,почемусвойствоТосвойство,чтотелолюбогоотношенияникогданесодержиткортежейзначенияатрибутовкортежей(хотяобычноодин и важным.тот же Понятно,физическийпорядоксвойствомуникальности.минимальностипервичногоключаявляетсякритическичто еслиудубликатов,следуетиз изопределениятелаотношениякакмножествакортежей.ВуВдубликатов,следуетопределениятелаотношениякакмножествакортежей.Отсутствиекортежей-дубликатов,первичныйи возможныеключиминимальностипервичногоключаявляетсякритическиважным.Понятно,чтоподдерживаетсядля всехкортежейкаждогоотношения).Крометого,отношенийэто еслисвойстволюбогоотношениясуществуетнаборатрибутов,обладающийсвойствомклассическойтеориимножествпоопределениюлюбоемножествосостоитизизклассическойтеориимножествпоопределениюлюбоемножествосостоитлюбогоотношениясуществуетнаборатрибутов,обладающийсвойствомоблегчаетвыполнениеоперациимодификациисхемсуществующихотношенийнеМогутсуществоватьзначенияотношенияснесколькиминесовпадающимиуникальности,тосуществуетиминимальныйнаборатрибутов,обладающийразличныхэлементов.различныхэлементов.уникальности,тосуществуетиминимальныйнаборатрибутов,обладающийтолькопутемдобавленияновыхатрибутов,ноипутемудалениясуществующих.минимальныминаборамиатрибутов,обладающимисвойствамиуникальностиТо свойство,что тело любогоотношенияникогдане содержиткортежейсвойствомуникальности.свойствомуникальности.проектировщикбазыданныхдолженрешить,какоеизальтернативныхмножествдубликатов, следует из определения тела отношения как множествакортежей.
В атрибутовназватьпервичнымключом,аостальныеминимальныенаборыатрибутов,Атомарностьзначенийатрибутов,перваянормальнаяформаотношенияклассическойтеориимножествпо определениюлюбое множествосостоит изМогутсуществоватьзначенияотношениянесколькиминесовпадающимиМогутсуществоватьзначенияотношенияс снесколькиминесовпадающимиобладающиесвойствомуникальности,называютсявозможнымиключами.различныхэлементов. минимальныминабораминаборамиатрибутов,атрибутов,обладающимиобладающимисвойствамисвойствамиуникальностиуникальностиминимальнымипроектировщикбазыданныхданныхдолженатомарнымирешить,какоекакоеальтернативныхмножествЗначениявсех атрибутовявляются(вернее,скалярными).множествЭто следует изпроектировщикбазыдолженрешить,изизальтернативныхТеперьпоясним,почемупроектировщикуследуетявно объявлятьпервичныйиатрибутовназватьпервичнымключом,аостальныеминимальныенаборыатрибутов,определениядоменакакпотенциальногомножествазначенийскалярноготипаатрибутовключом,а остальныеатрибутов,возможныеназватьключипервичнымпеременныхотношений.Деломинимальныев том, чтонаборыв результатеэтогообладающиеуникальности,называютсявозможнымиключами.данных,т.
свойствоме.свойствомсреди значенийдоменане могутвозможнымисодержатьсязначения с видимойобладающиеуникальности,называютсяключами.объявления СУБДполучаетинформацию,которая в дальнейшембудет использоватьсяструктурой, в том числе множества значений (отношения). Заметим, что это некак ограничения целостности. СУБД никогда не допустит появления в переменнойпротиворечитпотенциальнойвозможности использованияпри объявлятьспецификацииатрибутовиТеперь поясним,поясним,почему проектировщикупроектировщикуследуетявнопервичныйТеперьпочемуявнообъявлятьпервичныйиотношениязначения-отношения,содержащегоследуетдва кортежас одинаковымзначениемтиповданных,определяемыхпользователями.Например,можнобылобыдобавитьввозможныеключипеременныхотношений.Деловтом,чтоврезультатеэтоговозможныеключи переменныхотношений.Дело включатом, чторезультатеэтогоатрибута СЛУ_НОМЕР(определениепервичногодля вданнойпеременнойсхемуотношенияСЛУЖАЩИЕатрибут СЛУ_ФОТО,определенныйнадомене(илиобъявленияСУБДполучаетполучаетинформацию,котораядальнейшембудетиспользоватьсяиспользоватьсяотношенияотменитьнельзя).Появление котораядвух кортежейс одинаковымзначениемобъявленияСУБДинформацию,в вдальнейшембудеттипеданных)ФОТОГРАФИИ.Главноеватомарностизначенийатрибутовсостоиткакограниченияограниченияцелостности.СУБДникогданенедодопуститдопуститпоявленияпеременнойатрибутаСЛУ_ИМЯбудет такженевозможнотех пор,появленияпока остаетсяв силевкакцелостности.СУБДникогдав впеременнойтом,что реляционнаяСУБДнедолжнаобеспечиватьпользователямявнойотношениязначения-отношения,содержащегодвакортежасодинаковымодинаковымзначениемопределение{СЛУ_ИМЯ}как возможногоключа.Темсамымсобъявленияпервичногоиотношениязначения-отношения,содержащегодвакортежазначениемвидимостивнутреннейструктурызначения.СовсемизначениямиможнообращатьсяатрибутаСЛУ_НОМЕР(определениепервичногоключадляданнойпеременнойвозможныхСЛУ_НОМЕРключей дают СУБДвозможностьподдерживатьданных атрибута(определениепервичногоключа целостностьдля данной базыпеременнойотношенияотменитьнельзя).
ПоявлениеПоявлениедвух кортежейкортежейодинаковым значениемзначениемдажев случаепопыток нельзя).занесенияв нее некорректныхданных.с с одинаковымотношенияотменитьдвухатрибута СЛУ_ИМЯСЛУ_ИМЯ будетбудет такжетакже невозможноневозможно додо техтех пор,пор, покапока остаетсяостается в в силесилеатрибутаопределение{СЛУ_ИМЯ}каквозможногоключа.Темсамымобъявленияпервичногоопределение{СЛУ_ИМЯ}как возможногоключа.Тем самымобъявления первичногоииНаконец, вернемсяк свойствуминимальностипервичногои возможныхключей. Каквозможныхвыше,ключейдаютСУБДвозможностьподдерживатьцелостностьбазыданныхданныхвозможныхключейдаютСУБДвозможностьподдерживатьотмечалосьэтосвойствоявляетсякритическиважным,целостностьи важностьбазыпроявляется14.
Реляционная модель данных: общее понятие и составные части.14. Реляционная модель данных: общее понятие и составные части.В структурной части модели фиксируется, что единственной родовой структуройВданных,структурнойчасти моделификсируется,что единственнойродовой структуройиспользуемойв реляционныхБД, являетсянормализованноеn-арноеданных,используемойвреляционныхБД,являетсянормализованноеn-арноеотношение. Определяются понятия доменов, атрибутов, кортежей, заголовка, тела итолько с помощьюопераций,определенныхв соответствующемданных.тела иотношение.Определяютсяпонятиядоменов, атрибутов,кортежей,типезаголовка,переменнойотношения.переменной отношения.
ЭдгарКоддсправедливоутверждал,чтодлямоделированиябольшинствапредметныхВ манипуляционной части модели определяются два фундаментальных механизмаобластей можно обойтисьотношениями,атрибутыкоторыхна простыхВманипулированияманипуляционнойчасти моделиопределяютсядва фундаментальныхмеханизмареляционнымиБД – реляционнаяалгебра определеныи реляционноедоменах, элементыкоторыхбазируетсяявляютсяне декомпозируемыми.Он, вманипулированияреляционнымиБД – реляционнаяалгебраи реляционноеисчисление.Первыймеханизмватомарными,основном наклассическойтеориичастности,говорилследующее:«Отношение,вседоменыкоторогоявляютсяпростыми,исчисление.механизмбазируетсяв основном на аклассическойтеориимножеств (сПервыйнекоторымиуточнениямии добавлениями),второй – на классическомможетбытьпредставленодвухмерныммассивом…соднороднымистолбцами.Длямножеств(снекоторымиуточнениямиидобавлениями),авторой–наклассическомлогическом аппарате исчисления предикатов первого порядка.
Основнойфункциейотношениясоднимилиболеенепростымидоменамитребуютсянесколькоболеелогическомаппаратеисчисленияпредикатовпервогопорядка. Основнойфункциейманипуляционнойчастиреляционноймодели являетсяобеспечениемерысложныеструктурыданных.»Болеетого,онпредлагалпростуюпроцедуруманипуляционнойчастиреляционноймоделиявляетсяобеспечениемерыреляционности любого конкретного языка реляционных БД: язык называетсянормализации,приводящуюотношение,значениямиодногоизатрибутовреляционностилюбогоконкретногоязыкавыразительностьюреляционных БД:иязыкназываетсяреляционным, еслион обладаетне меньшеймощностью,чемкоторыхявляются отношения,к несколькимотношениямнад простымидоменами. чемреляционным,если онилиобладаетне меньшейвыразительностьюи мощностью,реляционнаяалгебрареляционноеисчисление.реляционная алгебра или реляционное исчисление.
и вчастиистиннойреляционнойи в моделиданныхтребованияSQL теперьВОднакоцелостнойреляционноймоделимоделиданных данных,фиксируютсядва базовыхможно определятьотношения(таблицы),значениямиатрибутов(столбцов)которыхВцелостности,целостнойчастиреляционноймоделиданныхфиксируютсядва базовыхтребованиякоторыедолжны поддерживатьсяв любой реляционнойСУБД.Первоеявляютсяотношения(мультимножествастрок).Скореевсего,этопроизошлопо двумцелостности,которые должныподдерживатьсяв любойреляционнойСУБД.Первоетребование называетсятребованиемцелостностисущностей.Объектуили сущностипричинам:Во-первых,в течениелет реляционнуюданныхмодель SQL)требованиеназываетсятребованиемцелостностисущностей.Объектуили(исущностиреальногомирав реляционныхБДмногихсоответствуюткортежи модельотношений.Конкретномногиелюдикритиковализасложностьпредставленияиерархическиорганизованныхреальногомирав реляционныхБД соответствуюткортежиотношений.Конкретнотребованиесостоитв том, что любойкортеж любогоотношенияотличимот любогоданных.Понятно,чтоприналичиимеханизмавложенныхотношенийиерархическиетребованиесостоитвтом,чтолюбойкортежлюбогоотношенияотличимотлюбогодругого кортежа этого отношения, т.е.
другими словами, любое отношение должнообладатьпервичнымключом.Этотребованиеавтоматическиудовлетворяется,еслиданныепредставляютсявполнеестественно.Во-вторых,оказалось,чтопритщательномдругогокортежаэтогоключом.отношения,т.е. другимиавтоматическисловами, любоеотношение должнообладатьпервичнымЭто требованиеудовлетворяется,еслив в обладатьпервичнымключом.Этотребованиеавтоматическиудовлетворяется,есливсистемененарушаютсябазовыесвойстваотношений.определениисистемы типов,наличиеатрибутов(столбцов) со значениями-отношениямисистемене нарушаютсябазовыесвойстваотношений.системененарушаютсябазовыесвойстваотношений.никак не влияет на методы, разработанные в исходной теории реляционных БД НаНа самомсамом деле,деле, требованиетребование целостностицелостности сущностисущности полностьюполностью звучитзвучит следующимследующимНаНормализованныесамом деле, переменнойтребованиецелостностисущностиполностьюреляционногозвучит следующимобразом:ииотношенияотношениясоставляютдолженосновуклассическогоподходаобразом:у улюбойлюбой переменнойотношениядолженсуществоватьсуществоватьпервичныйпервичныйключ,ключ,образом:улюбойпеременнойотношениядолженсуществоватьпервичныйключ,никакоезначениеключав вкортежахзначения-отношенияк организациибазпервичногоданных.
Ониобладаютнекоторымиограничениями10) переменной(невсякую иникакоезначениепервичногоключакортежахзначения-отношенияпеременнойникакоезначениепервичногоключав кортежахзначения-отношенияотношенияненедолжносодержатьзначений.информациюудобнопредставлятьв видеплоских таблиц),но существеннопеременнойупрощаютотношениядолжносодержатьнеопределенныхнеопределенныхзначений.отношениянедолжносодержатьнеопределенныхзначений.манипулирование данными.
Рассмотрим, например, два идентичных оператора занесения Неопределенноезначениекортежа:Неопределенноезначение нене принадлежитпринадлежит никакомуникакому типутипу данныхданных ии можетможетНеопределенноезначениенепринадлежитникакому типуданныхи данныхможетприсутствоватьсредизначенийлюбогоатрибута,определенногоналюбомтипеприсутствовать среди значений любого атрибута, определенного на любом типе данныхприсутствоватьсредизначений любогоатрибута,определенногона любомтипеданных(еслиявноатрибута).Еслиaa – – этозначение• этозачислитьслужащегоКузнецова(пропускномер 3000,(еслиэтоявно нене запрещенозапрещено припри определенииопределенииатрибута).Еслизарплатаэто25000.00)значение в(если этоотделявнономерне запрещенопри определенииатрибута).