Главная » Просмотр файлов » Введение в системы БД

Введение в системы БД (542480), страница 184

Файл №542480 Введение в системы БД (Введение в системы БД) 184 страницаВведение в системы БД (542480) страница 1842015-08-16СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

Однако в такой ситуации внешнее вычитание вырождается до обычного вычитания. ° Основными проблемами, характерными для операции внешнего объединения, являются проблемы интерпретации; причем они даже сложнее проблем интерпретации, имеющих место в случае операции внешнего соединения. (См. [18.2] для более детального изучения.) В Данное объяснение относится к исходным опредеяениям этих операций (?З.бг. В работе /5.2З' они в некоторой степени изменены, и читателю предлагается самостоятееьно рассмотреть эти подробности. 710 Часть ['. Дополнительные аспекты 18.6.

Специальные значения Как показано выше, введение неопределенных значений (ИОЬЬ) приводит к разрушению реляционной модели, которая великолепно обходилась без них в течение десяти лет с момента ее создания 1969 году !5.1] и вплоть до введения этих значений в ! 979 году (! 3.1]. Теперь предположим, как в разделе 18.4, что понятие "неопределенных значений" в контексте представления отсутствующей информации заменено понятием специальных значений.

Следует отметить, что в реальном мире мы обычно пользуемся именно специальными значениями. Например, специальное значение "Г используется для обозначения количества рабочих часов для некоторого сотрудника, если его фактическое значение по какой-либо причине неизвестноз. Таким образом, общая идея заключается в том, чтобы просто применять подходящее специальное значение, отличное от обычных значений атрибута, во всех тех случаях, когда обычное значение не может использоваться. Обратите внимание, что это специальное значение обязательно должно принадлежать соответствующему домену.

Поэтому в примере с данными о количестве рабочих часов типом атрибута НООНЯ ИОНКЕО является не просто целое число, а целые числа плюс специальное значение. Безусловно, следует признать, что изложенная выше схема не очень элегантна, ио она обладает явным преимуществом, поскольку не подрывает логических основ реляционной модели. В остальной части этой книги мы будем просто игнорировать возможность поддержки неопределенных значений (ИОЬЬ) за исключением некоторых случаев, специфических для контекста языка БОЬ, когда те или иные ссылки на неопределенные значения (ИОЬЬ) будут неизбежны.

Более подробно эти вопросы рассматриваются в (18.! 2]. 18.7. Поддержка неопределенных значений в языке Я9Е Поддержка неопределенных значений (ИОЬЬ) и трехзначной логики в языке БО отражает весь широкий спектр подходов, описанных в разделах 18.1 — 18.5. Так, например, когда в языке БОЬ условие ИНЕНЕ применяется к таблице Т, зто исключает из рассмотрения все строки таблицы Т, для которых указанное в предложении ИНЕНЕ условие принимает значение7агле или ип7с (т.е. не ггие). Аналогично, когда к результату выполнения некоторой операции группирования, представленному таблицей О, применяется оператор НйЧ1ИО, из дальнейшего рассмотрения исключаются все группы кортежей, для которых указанное в предложении НйЧ180 условие принимает значение /а(зе или ип7г (т.е.

не ггие). Из этого следует, что мы просто обратили внимание читателя на некоторые возможности, специфические для языка БОЬ и не являющиеся частью концепции трехзначной логики, которая обсуждалась в предыдущем разделе. Заиечапие. Очень сложно оценить все последствия поддержки неопределенных значений (ИОЬЬ) в языке БОЬ. Дополнительную информацию можно найти в официальных документах стандарта БОЬ (4.22] и в учебном издании [4.19]. З Обратите впал|ание, чп1о для этого не используется яеопределепяое зиачеиие (ИУЩ. В реал ьпо ч лепре никакого неопределенного значения вообще пе существует.

711 Глава 18. Отсутстб)гюи(ая информацил Определение данных Как описано в разделе 5.5 главы 5, для столбцов таблиц базы данных обычно указывается некоторое значение, принимаемое па умолчанию; оно часто определяется (явно или неявно), как величина НОЬЬ.

Более того, столбцы в таблицах базы данных всегда разрешают использование неопределенных значений, если условие запрета их использования не будет указано явно (напрнмер, в виде фразы НОТ НОЬЬ). Представление неопределенных значений зависит от реализации, но оно должно быть таким, чтобы система смогла отличить это значение от лругих, которые неопределенными не являются (даже несмотря на то, что операция сравнения ИОЬЬ м х не дает в результате г«ие). Табличные выражения Напомним замечание из главы 7 (раздел 7.7) о том, что явная подлержка операции 1018 была введена только в версии Я()Ь/92 стандарта языка ЯОЬ. Более того, если перед ключевым словом 3018 указан один из определителей ЬЕГТ, Н16НТ или ГОЬЬ (с необязательной добавкой ООТЕН в каждом случае), рассматриваемое соединение является внешним. Вот несколько примеров.

Б ЬЕГТ 101И ЯР ОМ Я.Б[) = ЯР.Я() Я ЬЕГТ 101Н ЯР ОЯ1ИО ( Б)) ) Б ЬЕГТ НАТОРАЬ 101Ы БР Три приведенных выражения эквивалентны, но первое приводит к созданию таблицы с двумя идентичными столбцами номера поставщика, а второе и третье — таблицы с одним столбцом номера поставщика. Язык ЯОЬ также полдерживает аппроксимацию внешнего соединения, которую называют объединяюи(им соединением. Однако подробное обсуждение этого вопроса выходит за рамки данной главы.

Условные выражения Как отмечалось в главе 8, в языке ЯОЬ условные выражения являются аналогом того, что во всех остальных случаях называется логическими (или булевыми) выражениями (более подробно они рассматриваются в приложении А). Неудивительно, что условные выражения являются той частью языка Я >Ь, которая в наибольшей степени связана с неопределенными значениями и трехзначной логикой.

Ниже предлагается несколько замечаний по этому повалу. ° Проверка наличия неапредвленнага значения. В языке ЯОЬ предусмотрены два специальных оператора сравнения, 18 НОЬЬ и 1Я НОТ ИОЬЬ, предназначенных для проверки наличия или отсутствия неопределенных значений. Синтаксис использования этих операторов показан ниже. <конструктор строкИ> 1Я [ НОТ ) НОЬЬ (Параметр <колструктор строке> подробно рассматривается в приложении А.) Невнимательные пользователи могут попасть здесь в ловушку, поскольку выражения г 18 НОТ НОЬЬ и КОТ (г 1Я МОЬЬ) не являются эквивалентными! Более подробно эта особенность рассматривается в [4.

) 9). 712 Часть )«. Дополнительные аспекты ° Проверка наличия значений згце, за!ве и цп)цзоччп. Если р — это заключенное в скобки условное выражение, то следующие операторы также являются условными выражениями. р 1Я [ ИОТ ) ТВОЕ р 1Я [ ИОТ ] РАЬЯЕ р 1Я [ ИОТ ] ОИКИОНИ Значения этих выражений показаны в приведенной ниже таблице истинности. Обратите внимание, что выражения р 18 ИОТ ТИНЕ и ИОТ р не являются эквивалентными. Заиечание. Выражение р 1Я ОИЕИОИИ соответствует описанному выше оператору МАРНЕ(р). ° Условие МАТОМ. Синтаксис параметра <условяе яабсй> (см, приложение А) содержит ключевые слова РАНТ1АЬ и РОЬЬ (их использование в приложении А не рассматривается). Эти опции могут повлиять на результат, если в данных присутствуют неопределенные значения.

<конструктор строки> НАтсн [ ОМ1оое ] [ РАЕТ1АЬ ] РОЬЬ ) ( <табличное выражение>) Существует шесть возможных случаев, зависящих от того, указана ли опция ОИ1ООЕ, а также указана ли опция РАМТ1АЬ либо РОЬЬ. Подробное обсуждение этого вопроса достаточно сложное и выходит за рамки настоящей главы. Дополнительную информацию можно найти в [4.19].

° Уставив ЕХ1БТБ. См. комментарий к [! 8.6]. Скалярные выражения ° Литеразы. Ключевое слово МОЬЬ может быть использовано как способ литерального представления неопределенных значений (например, в операторе 1ИЯЕНТ). Тем не менее следует заметить, что данное ключевое слово может указываться не во всех контекстах, в которых допускается использование литералов. Согласно стандарту "не существует значения параметра <лнтерал> для представления неопределенных значений, хотя в некоторых случаях для указания необходимости использования неопределенного значения может употребляться ключевое слово ИОЬЬ" [4.22]. Поэтому, например, ключевое слово ИОЬЬ нельзя явно использовать как операнд в простых операциях сравнения, т.е. вы- ражениеМНЕНЕ Х = ИНЬЬ некорректно.

713 Глава 18. Отсутствующая информация ° Функция СОАБЕБСЕ. Это БОЬ-аналог функции 1Р ОИК (см. раздел 18.2), определенной выше в данной главе. ° Обоби1ающие функции. Обобщающие функции языка Б()Ь, например ЯОИ, АЧО и т.п., не ведут себя в соответствии с правилами для скалярных операторов, изложенными выше, в разделе 18.2. Вместо этого они просто игнорируют любое неопределенное значение в своих аргументах (исключеиие составляет функция СОНЕТ('), при вычислении которой неопределенное значение трактуется, как обычное значение). Кроме того, если этим функциям в качестве аргумента передается пустое множество, они возвращают неопределенное значение. Исключение и здесь составляет функция СОНЕТ, которая в данном случае возвращает значение "нуль'.

(Сравните с трактовкой обработки пустых множеств, изложенной в главе 7.) ° Скитярные подчиненные запросы. Если скалярное выражение фактически является заключенным в скобки табличным выражением, например (ЯЕЬЕСТ Я.С1ТУ ГНОИ Б ННЕНЕ Б.Б))='81'), то вполне естественно, что результатом вычисления подобного табличного выражения должна быть таблица, содержащая единственный столбец и единственную строку. Тогда значением скалярного выражения в целом будет то единственное скалярное значение, которое содержится в результирующей таблице.

Но если результатом вычисления табличного выражения является таблица, не содержащая ни одной строки, в языке Б()Ь значение этого скалярного выражения определяется, как неопределенное (ИОЬЬ). Ключи Ниже кратко перечислены основные особенности использования неопределенных значений в ключевых атрибутах, характерные для языка Б1.1Ь. ° Потенциальные ключи. Пусть С вЂ” это атрибут, являющийся частью потенциального ключа К некоторой базовой таблицы.

Если ключ К является первичным, то язык БОЬ запрещает использование неопределенных значений в столбце С (обеспечивая таким образом соблюдение ограничения целостности сущности). Тем не менее, если ключ К не является первичным, язык Б( Н- разрешает присутствие в столбце С любого количества неопределенных значений (конечно, вместе с любым количеством значений, не являющихся неопределенными).

° Внешние ключи. Правила, определяющие смысл соответствия значения заданного внешнего ключа некоторому значению соответствующего потенциального ключа (при наличии в них неопределенных значений), очень сложны. В данном случае их подробное обсуждение опускается. Заметим только, что они, в основном, совпадают с правилами, ус гановленными для условий ИАТСН (см, выше). Неопределенные значения также оказывают влияние на выполнение действий по установленным правилам поддержки ссылочной целостности (САБСАОЕ, ЯЕТ ИОЬЬ и т.д.), заданным в предложениях ОИ ОЕЬЕТЕ и ОН ОРОАТЕ.

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

Тип файла
DJVU-файл
Размер
10,05 Mb
Тип материала
Предмет
Высшее учебное заведение

Список файлов книги

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