Реферат: Базисные средства манипулирования реляционными данными - текст реферата. Скачать бесплатно.
Банк рефератов, курсовых и дипломных работ. Много и бесплатно. # | Правила оформления работ | Добавить в избранное
 
 
   
Меню Меню Меню Меню Меню
   
Napishem.com Napishem.com Napishem.com

Реферат

Базисные средства манипулирования реляционными данными

Банк рефератов / Технологии

Рубрики  Рубрики реферат банка

закрыть
Категория: Реферат
Язык реферата: Русский
Дата добавления:   
 
Скачать
Microsoft Word, 241 kb, скачать бесплатно
Заказать
Узнать стоимость написания уникального реферата

Узнайте стоимость написания уникальной работы

Базисные средства манипулирования реляционны ми данными Реляционная а лгебра Основная идея реляционной алгебры состоит в том , что коль скоро отношен ия являются множествами , то средства манипули рования отношениями могут базироваться на тра диционных теоретико-множественных операциях , дополненн ых некоторыми специальными опера циями , спе цифичными для баз данных . Существует много подходов к определению реляционной алгебры , которые различаются наборо м операций и способами их интерпретации , н о в принципе , более или менее равносильны . Мы опишем немного расширенный начальный вариант алгебры , который был предложен Ко ддом . В этом варианте набор основных алгеб раических операций состоит из восьми операций , которые делятся на два класса - теоретико- множественные операции и специальные реляционные операции . В состав теоретико-множественны х операций входят операции : · объединения отношений ; · пересечения отношений ; · взятия разности отно шений ; · прямого произведения отношений . Специальные реляционные операции включают : · ограничение отношения ; · проекцию отношения ; · соединение отнош ений ; · деление отношений . Кроме того , в состав алгебры включается операция присваивания , позволяющая с охранить в базе данных результаты вычисления алгебраических выражений , и операция переиме нования атрибутов , дающая возможность корректно сформировать з аголовок (схему ) результирующе го отношения . 5.1.1. Общая интер претация реляционных операций Если не вдаваться в некоторые тонкости , которые мы рассмотрим в следующ их подразделах , то почти все операции пред ложенного выше набора обладают очевидной и простой интерпретацией . · При выполнении операции объединения двух отношений производится отношение , включающее все кортежи , входящие хотя бы в одно из отношений-операндов . · Операция пересечения двух отношений производит отношение , включающее все кортежи , вход ящие в оба отнош ения-операнда . · Отношение , являющееся разностью двух отношений включает все корт ежи , входящие в отношение - первый операнд , такие , что ни один из них не входит в отношение , являющееся вторым операндом . · При выполнении прямо го произведен ия двух отношений производит ся отношение , кортежи которого являются конка тенацией (сцеплением ) кортежей первого и второ го операндов . · Результатом ограничения отношения по некоторому условию является отношение , включающее кортежи отношения-операнда , удовл етворяющее этому условию . · При выполнении проек ции отношения на заданный набор его атриб утов производится отношение , кортежи которого производятся путем взятия соответствующих значен ий из кортежей отношения-операнда . · При соединении двух отношений по н екоторому условию обра зуется результирующее отношение , кортежи которого являются конкатенацией кортежей первого и второго отношений и удовлетворяют этому ус ловию . · У операции реляционн ого деления два операнда - бинарное и унар ное отношения . Результирующе е отношение с остоит из одноатрибутных кортежей , включающих значения первого атрибута кортежей первого о перанда таких , что множество значений второго атрибута (при фиксированном значении первого атрибута ) совпадает со множеством значений второго операнда . · Операция переименования производит отношение , тело которого совпадае т с телом операнда , но имена атрибутов изменены . · Операция присваивания позволяет сохранить результат вычисления реляц ионного выражения в существующем отношении БД . Поскольку результа том любой реляционной операции (кроме операции присваиван ия ) является некоторое отношение , можно образо вывать реляционные выражения , в которых вмест о отношения-операнда некоторой реляционной операц ии находится вложенное реляционное выражение . 5.1.2. Замкн ут ость реляционной алгебры и операция переимено вания Как мы говорили в предыдущей лекции , каждое отношение характеризуется схе мой (или заголовком ) и набором кортежей (ил и телом ). Поэтому , если действительно желать иметь алгебру , операции которой замкнуты о тносительно понятия отношения , то каждая операция должна производить отношение в по лном смысле , т.е . оно должно обладать и телом , и заголовком . Только в этом случае будет действительно возможно строить вложенн ые выражения . Заголовок отношения представляет собой множество пар <имя-атрибута , имя-домена >. Если посмотреть на общий обзор реляционных операци й , приведенный в предыдущем подразделе , то видно , что домены атрибутов результирующего о тношения однозначно определяются доменами отноше ний-операндов . Однак о с именами атрибу тов результата не всегда все так просто . Например , представим себе , что у отноше ний-операндов операции прямого произведения имеют ся одноименные атрибуты с одинаковыми доменам и . Каким был бы заголовок результирующего отношения ? Поскольку э то множество , в н ем не должны содержаться одинаковые элементы . Но и потерять атрибут в результате н едопустимо . А это значит , что в этом сл учае вообще невозможно корректно выполнить оп ерацию прямого произведения . Аналогичные проблемы могут возникать и в сл учаях других двуместных операций . Для их разрешения в состав операций ре ляционной алгебры вводится операция переименован ия . Ее следует применять в любом случае , когда возникает конфликт именования атрибутов в отношениях - операндах одной реляционной опера ц ии . Тогда к одному из о перандов сначала применяется операция переименов ания , а затем основная операция выполняется уже безо всяких проблем . В дальнейшем изложении мы будем предпо лагать применение операции переименования во всех конфликтных случаях . 5.1.3 . Особенн ости теоретико-множественных операций реляционной алгебры Хотя в основе теоретико-множествен ной части реляционной алгебры лежит классичес кая теория множеств , соответствующие операции реляционной алгебры обладают некоторыми особенно стями . Начнем с операции объединения (все , что будет говориться по поводу объединения , переносится на операции пересечения и вз ятия разности ). Смысл операции объединения в реляционной алгебре в целом остается теоре тико-множественным . Но если в теории множеств операция о б ъединения осмысленна д ля любых двух множеств-операндов , то в слу чае реляционной алгебры результатом операции объединения должно являться отношение . Если д опустить в реляционной алгебре возможность те оретико-множественного объединения произвольных двух отн о шений (с разными схемами ), т о , конечно , результатом операции будет множест во , но множество разнотипных кортежей , т.е . не отношение . Если исходить из требования замкнутости реляционной алгебры относительно пон ятия отношения , то такая операция объединения я в ляется бессмысленной . Все эти соображения приводят к появлен ию понятия совместимости отношений по объединению : два отношения совместимы по объединению в том и толь ко в том случае , когда обладают одинаковым и заголовками . Более точно , это означает , ч то в за головках обоих отношений содерж ится один и тот же набор имен атрибут ов , и одноименные атрибуты определены на о дном и том же домене . Если два отношения совместимы по объед инению , то при обычном выполнении над ними операций объединения , пересечения и взятия разности результатом операции является отношение с корректно определенным заголовком , совпадающим с заголовком каждого из отноше ний-операндов . Напомним , что если два отношения "почти " совместимы по объединению , т.е . совм естимы во всем , кроме имен атрибут о в , то до выполнения операции типа с оединения эти отношения можно сделать полност ью совместимыми по объединению путем применен ия операции переименования . Заметим , что включение в состав операц ий реляционной алгебры трех операций объедине ния , пересечения и взятия разности являет ся очевидно избыточным , поскольку известно , чт о любая из этих операций выражается через две других . Тем не менее , Кодд в с вое время решил включить все три операции , исходя из интуитивных потребностей потенциа льного пользователя систе м ы реляционны х БД , далекого от математики . Другие проблемы связаны с операцией вз ятия прямого произведения двух отношений . В теории множеств прямое произведение может быть получено для любых двух множеств , и элементами результирующего множества являются па ры , составленные из элементов первого и второго множеств . Поскольку отношения я вляются множествами , то и для любых двух отношений возможно получение прямого произве дения . Но результат не будет отношением ! Э лементами результата будут являться не кортеж и , а пары кортежей . Поэтому в реляционной алгебре используетс я специализированная форма операции взятия пр ямого произведения - расширенное прямое произведен ие отношений . При взятии расширенного прямого произведения двух отношений элементом резуль тирующего отно шения является кортеж , являю щийся конкатенацией (или слиянием ) одного корт ежа первого отношения и одного кортежа вт орого отношения . Но теперь возникает второй вопрос - как получить корректно сформированный заголовок отношения-результата ? Очевидно , что про блемой может быть именование атрибутов результирующег о отношения , если отношения-операнды обладают одноименными атрибутами . Эти соображения приводят к появлению п онятия совместимости по взятию расширенного прямого произведения . Два отношения совместимы по взятию пр ямого произведения в том и только в т ом случае , если множества имен атрибутов э тих отношений не пересекаются . Любые два о тношения могут быть сделаны совместимыми по взятию прямого произведения путем применения операции переименования к одному из этих отношений . Следует заметить , что операция взятия прямого произведения не является слишком осмы сленной на практике . Во-первых , мощность ее результата очень велика даже при допустимы х мощностях операндов , а во-вторых , результат операции не более информ ативен , чем взятые в совокупности операнды . Как мы уви дим немного ниже , основной смысл включения операции расширенного прямого произведения в состав реляционной алгебры состоит в том , что на ее основе определяется действительн о полезная операция соединени я . По поводу теоретико-множественных операций реляционной алгебры следует еще заметить , ч то все четыре операции являются ассоциативным и . Т . е ., если обозначить через OP любую и з четырех операций , то (A OP B) OP C = A (B OP C), и следовательно , без введения двусмысленности можно писа ть A OP B OP C (A, B и C - отношения , обладающие свойствами , тр ебуемыми для корректного выполнения соответствую щей операции ). Все операции , кроме взятия р азности , являются коммутативными , т.е . A OP B = B OP A. 5.1.4. Специальные реляционные операции В этом подразделе мы нескольк о подробнее рассмотрим специальные реляционные операции реляционной алгебры : ограничение , прое кция , соединение и деление . Операция ограничения Операция ограничения требует наличия двух операндов : огранич иваемого отношения и простого условия ограничения . Простое условие ограничения может иметь либо вид (a comp-op b), где а и b - имена атрибутов ограничиваемого отн ошения , для которых осмысленна операция сравн ения comp-op, либо вид (a comp-op const), где a - имя атрибута ограничиваемого отношения , а const - литерально за данная константа . В результате выполнения операции ограниче ния производится отношение , заголовок которого совпадает с заголовком отношения-операнда , а в тело входят те кортежи отношения-опера нда , для которых значением условия огр аничения является true. Пусть UNION обозначает операцию объединения , INTERSECT - операцию пересечения , а MINUS - операцию взятия разности . Для обозначения операции ограничения будем использовать конструкцию A WHERE co mp, где A - ограничиваемое отношение , а comp - простое условие сравнения . Пусть comp1 и comp2 - два простых условия ограничения . Тогда по определению : · A WHERE comp1 AND comp2 обозначает то же самое , что и (A WHERE comp1) INTERSECT (A WHERE comp2) · A W HERE comp1 OR comp2 обозначает то же самое , что и (A WHERE comp1) UNION (A WHERE comp2) · A WHERE NOT comp1 обозначает то же самое , что и A MINUS (A WHERE comp1) С использованием этих определений можно использовать операции ограничения , в которых условие м ограничения является п роизвольное булевское выражение , составленное из простых условий с использованием логических связок AND, OR, NOT и скобок . На интуитивном уровне операцию ограничени я лучше всего представлять как взятие нек оторой "горизонтальной " вы резки из отношени я-операнда . Операция взятия проекции Операция взятия проекции также требует наличия двух операндов - проецируемого отношени я A и списка имен атрибутов , входящих в заголовок отношения A. Результатом проекции отношения A по списку атрибут ов a 1 , a 2 , ..., a n является отношение , с заголовко м , определяемым множеством атрибутов a 1 , a 2 , ..., a n , и с телом , состоящим из кортежей вида таких , что в отношении A имеется кортеж , атрибут a 1 которого имеет зна чение v 1 , атрибут a 2 имеет зна чение v 2 , ..., атрибут a n имеет значение v n . Тем самым , при выполнении операции проекции выделяется "вер тикальная " вырезка отношения-операнда с естественн ым уничтожением потенциально возникающих кортеже й-дубликатов . Операция соединения отноше ни й Общая операция соединения (называемая такж е соединением по условию ) требует наличия двух операндов - соединяемых отношений и треть его операнда - простого условия . Пусть соединяю тся отношения A и B. Как и в случае опера ции ограничения , условие соединен ия comp имеет вид либо (a comp-op b), либо (a comp-op const), где a и b - имена атрибутов отношений A и B, const - литерально заданная константа , а comp-op - допустимая в данном контексте операция сравнения . Тогда по определению результатом операции сравн ения является отношение , получаемое путем выполнения операции ограничения по условию comp прямого произведения отношений A и B. Если внимательно осмыслить это определени е , то станет ясно , что в общем случае применение условия соединения существенно ум еньш ит мощность результата промежуточного прямого произведения отношений-операндов только в том случае , когда условие соединения имее т вид (a comp-op b), где a и b - имена атрибутов разных отношений-операндов . Поэтому на практике обыч но считают реальными опер а циями со единения именно те операции , которые основыва ются на условии соединения приведенного вида . Хотя операция соединение в нашей интер претации не является примитивной (поскольку о на определяется с использованием прямого прои зведения и проекции ), в силу особой пр актической важности она включается в базовый набор операций реляционной алгебры . Заметим также , что в практических реализациях сое динение обычно не выполняется именно как ограничение прямого произведения . Имеются более эффективные алгоритмы , гар а нтирующие получение такого же результата . Имеется важный частный случай соединения - эквисоединение и простое , но важное расш ирение операции эквисоединения - естественное соед инение . Операция соединения называется операцией эквисоединения , е сли условие со единения имеет вид (a = b), гд е a и b - атрибуты разных операндов соединения . Этот случай важен потому , что (a) он часто встречается на практике , и (b) для него существуют эффективные алгоритмы реализации . Операция естественного соединения применяется к п аре отношений A и B, обладающих (в озможно составным ) общим атрибутом c (т.е . атрибу том с одним и тем же именем и опр еделенным на одном и том же домене ). Пу сть ab обозначает объединение заголовков отношений A и B. Тогда естественное соединение A и B - это с проектированный на ab результат эквис оединения A и B по A/c и BBC. Если вспомнить введен ное нами в конце предыдущей главы определ ение внешнего ключа отношения , то должно с тать понятно , что основной смысл операции естественного соединения - возможность вос с тановления сложной сущности , декомпозированной по причине требования первой нормальной формы . Операция естественного соединения не в ключается прямо в состав набора операций реляционной алгебры , но она имеет очень ва жное практическое значение . Операция дел ения отношений Эта операция наименее очевидна из всех операций реляционной алгебры и поэтому н уждается в более подробном объяснении . Пусть заданы два отношения - A с заголовком a 1 , a 2 , ..., a n , b 1 , b 2 , ..., b m и B с заголовком b 1 , b 2 , ..., b m . Будем с читать , что атриб ут b i отношения A и атрибут b i отноше ния B не только обладают одним и тем же именем , но и определены на одном и том же домене . Назовем множество атрибутов a j составным атр ибутом a, а множество атрибутов b j - составным атрибутом b. Посл е этого будем говорить о реляционном делен ии бинарного отношения A(a,b) на унарное отношение B(b). Результатом деления A на B является унарное отношение C(a), состоящее из кортежей v таких , что в отношении A имеются кортежи такие , что множество зна чений w включает множеств о значений атрибута b в отношении B. Предположим , что в базе данных сотрудн иков поддерживаются два отношения : СОТРУДНИКИ ( ИМЯ , ОТД _НОМЕР ) и ИМЕНА ( ИМЯ ), причем у нарное отношение ИМЕНА содержит все фамилии , которыми обладают сотрудники организации . Тогда после выполнения операции реляционного деления отношения СОТРУДНИКИ на отношение ИМЕНА будет получено унарное отношение , сод ержащее номера отделов , сотрудники которых об ладают всеми возможными в этой организации именами. Реляц ионное исчисление Предположим , что мы работаем с базой данных , обладающей схемой СОТРУДНИКИ (СОТР _НОМ , СОТР _ИМЯ , СОТР _ЗАРП , ОТД _НО М ) и ОТДЕЛЫ (ОТД _НОМ , ОТД _КОЛ , ОТД _Н АЧ ), и хотим узнать имена и номера сотр удников , являющихся начальниками отделов с ко личест вом сотрудников больше 50. Если бы для формулировки такого запрос а использовалась реляционная алгебра , то мы получили бы алгебраическое выражение , которое читалось бы , например , следующим образом : · выполнить соединение отношений СОТРУДНИ КИ и ОТДЕЛЫ по у словию СОТР _НОМ = ОТД _НАЧ ; · ограничить полученное отношение по условию ОТД _КОЛ > 50; · спроецировать результат предыдущей операции на атрибут СОТР _ИМЯ , СОТР _НОМ . Мы четко сформулировали последова тельность шагов выполнения запроса , каждый из которых соо тветствует одной реляционной операции . Если же сформулировать тот же запрос с использованием реляционного исчисле ния , которому посвящается этот раздел , то мы получили бы формулу , которую можно было бы прочитать , например , следующим образом : Выдать СОТР _ИМ Я и СОТР _НОМ дл я сотрудников таких , что существует отдел с таким же значением ОТД _НАЧ и значен ием ОТД _КОЛ большим 50. Во второй формулировке мы указали лишь характеристики результирующего отношения , но ничего не сказали о способе его формирова ния . В этом с лучае система должна с ама решить , какие операции и в каком п орядке нужно выполнить над отношениями СОТРУД НИКИ и ОТДЕЛЫ . Обычно говорят , что алгебра ическая формулировка является процедурной , т.е . задающей правила выполнения запроса , а логи ческая - описател ь ной (или декларативной ), поскольку она всего лишь описывает свой ства желаемого результата . Как мы указывали в начале лекции , на самом деле эти два механизма эквивалентны и существуют не очень сложные правила преобразования одного формализма в другой . 5.2. 1. Кортежн ые переменные и правильно построенные формулы Реляционное исчисление является п рикладной ветвью формального механизма исчислени я предикатов первого порядка . Базисными понят иями исчисления являются понятие переменной с определенной для нее область ю допусти мых значений и понятие правильно построенной формулы , опирающейся на переменные , предикаты и кванторы . В зависимости от того , что является областью определения переменной , различаются ис числение кортежей и исчисление доменов . В исчислении кортеже й областями определения переменных являются отношения базы данных , т.е . допустимым значением каждой переменной явля ется кортеж некоторого отношения . В исчислени и доменов областями определения переменных яв ляются домены , на которых определены атрибуты отно ш ений базы данных , т.е . допу стимым значением каждой переменной является з начение некоторого домена . Мы рассмотрим боле е подробно исчисление кортежей , а в конце лекции коротко опишем особенности исчисления доменов . В отличие от раздела , посвященного рел яцио нной алгебре , в этом разделе нам не удастся избежать использования некоторого конкретного синтаксиса , который мы , тем не менее , формально определять не будем . Нео бходимые синтаксические конструкции будут вводит ься по мере необходимости . В совокупности , ис п ользуемый синтаксис близок , но н е полностью совпадает с синтаксисом языка баз данных QUEL, который долгое время являлся основным языком СУБД Ingres. Для определения кортежной переменной испо льзуется оператор RANGE. Например , для того , чтобы определить пер еменную СОТРУДНИК , областью определения которой является отношение СОТРУ ДНИКИ , нужно употребить конструкцию RANGE СОТРУД НИК IS СОТРУДНИКИ Как мы уже говорили , из эт ого определения следует , что в любой момен т времени переменная СОТРУДНИК представляет н е который кортеж отношения СОТРУДНИКИ . При использовании кортежных переменных в формула х можно ссылаться на значение атрибута пе ременной (это аналогично тому , как , например , при программировании на языке Си можно сослаться на значение поля структурной пер ем е нной ). Например , для того , чтобы сослаться на значение атрибута СОТР _ИМЯ переменной СОТРУДНИК , нужно употребить конструк цию СОТРУДНИК.СОТР _ИМЯ . Правильно построенные формулы (WFF - Well-Formed Formula) служат для выражения условий , накладываемых на кор теж ные переменные . Основой WFF являются прост ые сравнения (comparison), представляющие собой операции сравнения скалярных значений (значений атрибуто в переменных или литерально заданных констант ). Например , конструкция "СОТРУДНИК.СОТР _НОМ = 140" яв ляется про с тым сравнением . По опред елению , простое сравнение является WFF, а WFF, заключ енная в круглые скобки , является простым с равнением . Более сложные варианты WFF строятся с пом ощью логических связок NOT, AND, OR и IF ... THEN. Так , если form - WFF, а comp - пр остое сравнение , то NOT form, comp AND form, comp OR form и IF comp THEN form являются WFF. Наконец , допускается построение WFF с помощью кванторов . Если form - это WFF, в которой участвует переменная var, то конструкции EXISTS var (form) и FORALL var (fo rm) представляют wff. Переменные , входящие в WFF, могут быть сво бодными или связанными . Все переменные , входящ ие в WFF, при построении которой не использов ались кванторы , являются свободными . Фактически , это означает , что если для какого-то наб ора значени й свободных кортежных переменн ых при вычислении WFF получено значение true, то эти значения кортежных переменных могут вход ить в результирующее отношение . Если же им я переменной использовано сразу после квантор а при построении WFF вида EXISTS var (form) и л и FORALL var (form), то в этой WFF и во всех WFF, построенных с ее участием , var - это связанная переменная . Это означает , что такая переменная не видна за пределами минимальной WFF, связавшей эту переменную . При вычислении значения такой WFF используется не одно значение свя занной переменной , а вся ее область опреде ления . Пусть СОТР 1 и СОТР 2 - две кортежные п еременные , определенные на отношении СОТРУДНИКИ . Тогда , WFF EXISTS СОТР 2 (СОТР 1.СОТР _ЗАРП > СОТР 2.СОТ Р _ЗАРП ) для текущего кортежа переменной СО ТР 1 пр инимает значение true в том и то лько в том случае , если во всем отноше нии СОТРУДНИКИ найдется кортеж (связанный с переменной СОТР 2) такой , что значение его атрибута СОТР _ЗАРП удовлетворяет внутреннему условию сравнения . WFF FORALL СОТР 2 (СОТР 1.СОТР _ЗАРП > СОТР 2.СОТР _ЗАРП ) для текущего кортежа переменной СОТР 1 принимает значение true в том и только в том случае , если для всех кортежей отношения СОТРУДНИКИ (с вязанных с переменной СОТР 2) значения атрибута СОТР _ЗАРП удовлетворяют условию сравнения . На самом де ле , правильнее говорить не о свободных и связанных переменных , а о свободных и связанных вхождениях п еременных . Легко видеть , что если переменная var является связанной в WFF form, то во всех WFF, вк лючающих данную , может использоваться имя пер еменной var, которая может быть свободной или связанной , но в любом случае не им еет никакого отношения к вхождению переменной var в WFF form. Вот пример : EXISTS СОТР 2 (СОТР 1.СОТР _ОТД _НОМ = СОТР 2.СОТР _ОТД _Н ОМ ) AND FORALL СОТР 2 (СОТР 1.СОТР _ЗАРП > СОТР 2.СОТР _ЗАРП ) Здесь мы имеем два связанных вхождения переменной СОТР 2 с совершенно р азным смыслом . 5.2.2. Целевые спи ски и выражения реляционного исчисления Итак , WFF обеспечивают средства форму лировки условия выборки из отношений БД . Ч тобы можно было использовать исч исление для реальной работы с БД , требуется еще один компонент , который определяет набор и имена столбцов результирующего отношения . Э тот компонент называется целевым списком (target_list). Целевой список строится из целевых эле ментов , каждый из которых м ожет иметь следующий вид : · var.attr, где var - имя свободной переменной соответствующей WFF, а attr - имя атрибута отношения , на котором определена переменная var; · var, что эквивалентно наличию подсписка var.attr1, var.attr2, ..., var.attrn, где attr1 , attr2, ..., attrn включа ет имена всех атрибутов определяющего отношен ия ; · new_name = var.attr; new_name - новое имя соответствующего атрибута результирующего отношения . Последний вариант требуется в тех случаях , когда в WFF используются несколько своб одных переменных с одинаковой обл астью определения . Выражением реляционного исчисления кортежей называется конструкция вида target_list WHERE wff. Значением вы ражения является отношение , тело которого опр еделяется WFF, а набор атрибутов и их имена - целев ым списком . 5.2.3. Реляционное исчисление доменов В исчислении доменов областью определения переменных являются не отношения , а домены . Применительно к базе данных СОТ РУДНИКИ-ОТДЕЛЫ можно говорить , например , о доме нных переменных ИМЯ (значения - допустимы е имена ) или НОСОТР (значения - допустимые но мера сотрудников ). Основным формальным отличием исчисления д оменов от исчисления кортежей является наличи е дополнительного набора предикатов , позволяющих выражать так называемые условия членства . Если R - это n -арное отношение с атрибутам и a 1 , a 2 , ..., a n , то условие членства имеет вид R (ai1:vi1, ai2:vi2, ..., aim:vim) (m <= n), где v ij - это либо литерально задаваемая констан та , либо имя кортежной переменной . Условие членства принимает значение true в том и только в том случае , если в отношении R существует кортеж , содержащий указанные значен ия указанных атрибутов . Если v ij - константа , то на атрибут a ij задается жесткое условие , не зависящее от текущих значений доменных переменных ; если же v ij - имя доменно й переменной , то условие членства может принимать разные значения при разных значениях этой перем енной . Во всех остальных отношениях формулы и выражения исчисления доменов выглядят похожи ми на формулы и выражения исчисления корт ежей . В частности , конечно, различаются св ободные и связанные вхождения доменных переме нных . Для примера сформулируем с использованием исчисления доменов запрос "Выдать номера и имена сотрудников , не получающих минимальну ю заработную плату " (будем считать для про стоты , что мы опред елили доменные пере менные , имена которых совпадают с именами атрибутов отношения СОТРУДНИКИ , а в случае , когда требуется несколько доменных переменных , определенных на одном домене , мы будем добавлять в конце имени цифры ): СОТР _НОМ , СОТР _ИМЯ WHERE EXIS TS СОТР _ЗАРП 1 (СОТРУДНИКИ (СОТР _ЗАРП 1) AND СОТРУДНИКИ (СОТР _НОМ , СОТР _ИМЯ , СОТР _ЗАРП ) AND СОТР _ЗАРП > СОТР _ЗАРП 1) Реляционное исчисление доменов яв ляется основой большинства языков запросов , о снованных на использовании форм . В частности , н а этом исчислении базировался извес тный язык Query-by-Example, который был первым (и наибо лее интересным ) языком в семействе языков , основанных на табличных формах.
1Архитектура и строительство
2Астрономия, авиация, космонавтика
 
3Безопасность жизнедеятельности
4Биология
 
5Военная кафедра, гражданская оборона
 
6География, экономическая география
7Геология и геодезия
8Государственное регулирование и налоги
 
9Естествознание
 
10Журналистика
 
11Законодательство и право
12Адвокатура
13Административное право
14Арбитражное процессуальное право
15Банковское право
16Государство и право
17Гражданское право и процесс
18Жилищное право
19Законодательство зарубежных стран
20Земельное право
21Конституционное право
22Конституционное право зарубежных стран
23Международное право
24Муниципальное право
25Налоговое право
26Римское право
27Семейное право
28Таможенное право
29Трудовое право
30Уголовное право и процесс
31Финансовое право
32Хозяйственное право
33Экологическое право
34Юриспруденция
 
35Иностранные языки
36Информатика, информационные технологии
37Базы данных
38Компьютерные сети
39Программирование
40Искусство и культура
41Краеведение
42Культурология
43Музыка
44История
45Биографии
46Историческая личность
47Литература
 
48Маркетинг и реклама
49Математика
50Медицина и здоровье
51Менеджмент
52Антикризисное управление
53Делопроизводство и документооборот
54Логистика
 
55Педагогика
56Политология
57Правоохранительные органы
58Криминалистика и криминология
59Прочее
60Психология
61Юридическая психология
 
62Радиоэлектроника
63Религия
 
64Сельское хозяйство и землепользование
65Социология
66Страхование
 
67Технологии
68Материаловедение
69Машиностроение
70Металлургия
71Транспорт
72Туризм
 
73Физика
74Физкультура и спорт
75Философия
 
76Химия
 
77Экология, охрана природы
78Экономика и финансы
79Анализ хозяйственной деятельности
80Банковское дело и кредитование
81Биржевое дело
82Бухгалтерский учет и аудит
83История экономических учений
84Международные отношения
85Предпринимательство, бизнес, микроэкономика
86Финансы
87Ценные бумаги и фондовый рынок
88Экономика предприятия
89Экономико-математическое моделирование
90Экономическая теория

 Анекдоты - это почти как рефераты, только короткие и смешные Следующий
Прежде чем жениться, попробуйте с невестой вдвоём поклеить обои. Если выживете и при этом оба останетесь довольны, вы просто созданы друг для друга.
Anekdot.ru

Узнайте стоимость курсовой, диплома, реферата на заказ.

Банк рефератов - РефератБанк.ру
© РефератБанк, 2002 - 2016
Рейтинг@Mail.ru