Главная » Просмотр файлов » С.Д. Кузнецов - Основы баз данных

С.Д. Кузнецов - Основы баз данных (1121716), страница 54

Файл №1121716 С.Д. Кузнецов - Основы баз данных (С.Д. Кузнецов - Основы баз данных) 54 страницаС.Д. Кузнецов - Основы баз данных (1121716) страница 542019-05-10СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

00), оно не может быть занесено в таблицу ОЯРт, поскольку противоречит ограниче- ниюстолбцаэеРТ ТОТАЬ ЯА' СиеСК (тгАЬОЕ >= 100000.00Ь Можно задуматься, действительно ли требуется поддерживать в таблице герт столбец Оерт емР мо. Как мы видели, для его поддержки требуется проверять громоздкое ограничение целостности, а число служащих в любом отделе можно получить динамически с помощью простого запроса к таблице емР (собственно, этот запрос входит в ограничение целостности). Поэтому может оказаться разумным отменить определение столбца Оерт емР мо, выполнив следующий оператор Аьтее тАвье: АЬТЕЕ ТАЕЬЕ ОЕРТ ОЕСР ОЕРТ ЕМР ИО САЯСАЗЕ. Напомним, что спецификация САЯСАОЕ ведет к тому, что при выполнении оператора будет уничтожено не только определение указанного столбца, но и определения всех ограничений целостности и представлений, в которых используется уничтожаемый столбец.

В нашем случае единственное связанное с этим столбцом ограничение целостности, определенное вне определения столбца, было бы отменено, даже если бы в операторе отмены определения столбца ОЕРТ ЕМР МО содержалась спецификация ееятЕТСт, поскольку это единственное внешнее определение ограничения является ограничением только столбца ЗЕРТ ЕМР МО. 251 Основы бал данных Курс Изменение набора табпичных ограничений Действие по изменению набора табличных ограничений специфицируется в следующем синтаксисе: Ьазе гаЫе сопят гаупг а1гегпаг1оп асгуоп АРО [ СО[[ЯТРА1[хТ [ Ьазе паЫе сопзггагп" бе11пРЫоп ОЕСР СОНЯТЕА1НТ сопасга1пп папе [ РЕЯТЕТСТ [ САЯСАОЕ 3 Действие АОО [ СОНЯТЕАТНТ [ позволяет добавить к набору существующих ограничений таблицы новое ограничение целостности, Можно считать, что новое ограничение добавляется через Анп к конъюнкции сушествующих ограничений, как если бы оно определялось в составе оператора сеелте тАеье.

Но здесь имеется одно существенное отличие. Если внимательно посмотреть на все возможные виды табличных ограничений, можно убедиться, что любое из них удовлетворяется на пустой таблице. Поэтому, какой бы набор табличных ограничений ни был определен при создании таблицы, это определение является допустимым и не препятствует выполнению оператора сРЯАте тлвее. При добавлении нового табличного ограничения с использованием действия АОО [ сОнятРА1нт [ мы имеем другую ситуацию, поскольку таблица, скорее всего, уже содержит некоторый набор строк, лля которого условное выражение нового ограничения может принять значениегайе. В этом случае выполнение оператора Аетек тАвее, включающего действие АОО [ сонятеА1нт ], отвергается. Выполнение действия ОЕСР СОНЯТРАТИТ приводит к отмене определения существующего табличного ограничения.

Можно отменить определение только именованных табличных ограничений. Спецификации РЕЯТЕТСТ и САЯСАОЕ осмыслены только в том случае, если отменяемое ограничение является ограничением возможного ключа (ОупООе или РР1- ИАРУ КЕУ)". При указании РЕЯТЕТСТ действие отвергается, если на данный возможный ключ ссылается хотя бы один внешний ключ. При указании сАЯОАОе действие ОРОР сонятеА1нт выполняется в любом случае, и все определения таких внешних ключей также отменяются. Лримеры изменения набора табличных ограничений Напомним, что мы добавили к таблице Еир столбец Еу[Р ЕО[чОЯ, в котором сохраняются размеры ежемесячных премий служащих. Предположим, что премии выплачиваются из фонда заработной платы отдела, в котором работает служащий. Тогда проверочное ограничение столбца ОЕРТ ТОТА1, ЯИ., уСтанавливающее, чтО объем фонда зарплаты отдела ' Хотя формально требуется укхэыввть одно из этих ключевых слов в любом действии пхоу сонзтхлтит.

252 Лекция !2 Средства определения базовых таблиц и ограничений целостности не должен быть меньше суммарной зарплаты служащих этого отдела, становится недостаточным, и нам требуется добавить к набору ограничений таблицы ОеРт новое ограничение: А1 ТЕЛ ТАВЬЕ РЕРТ АОР СОНЯТЕА1НТ ТОТАЬ 1НСОМЕ СНЕСК (РЕЕТ ТОТАЬ ЯАЬ >= )ЯЕЬЕСТ ЯВИ)ЕМР ЯАЬ + СОАЬЕЯСЕ)ЕМР ВОН)1Я,0))РВОМ ЕМР ННЕЕЕ ЕМР.ВЕЕТ НО = ВЕРТ НО)). Хотя это ограничение на вид довольно сложное, смысл его очень прост; суммарный доход служащих отдела не должен превышать объем зарплаты отдела. В арифметическом выражении под знаком агрегатной операции ЯВИ используется операция СОАЬЕЯСЕ. Эта двуместная операция определяется следующим образом: СОАЬЕЯСЕ )х, у) 1Р х 1Я НОТ Н1)ЬЬ ТНЕН х ЕЬЯЕ у, т. е. значением операции является значение первого операнда, если оно не равно МОЬЬ, и значение второго операнда — в противном случае.

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

Зто не значит, что его нельзя отменить вообще. В стандарте языка Я'.>1 требуется, чтобы ограничения целостности, которым не назначены явные имена, получали имена, автоматически генерируемые системой. Любой квалифицированный пользователь 9 Н.-ориентированной СУБД (скорее всего, администратор) может обнаружить имя любого ограничения, обратившись к системной таблице-каталогу ограничений целостности. Кстати, новому ограничению мы присвоили явное имя. К этому привели следующие рассуждения. Когда создавалась исходная схема базы данных, руководство предприятия ничего не говорило о премиях служащих.

Теперь начальство решило, что премии будут выплачиваться из фонда зарплаты. Для этого, мы добавили новый столбец и новое ограничение 2бэ Основы баз данных Курс целостности. Но кто знает, не изменится ли снова решение о премиях? Чтобы не добавлять себе работы в будущем, дадим новому ограничению явное имя и не будем отменять предыдущее ограничение.' При определении таблицы емр было специфицировано проверочное табличное ограничение РВО емр МО, устанавливающее, что над одним проектом не должно работать более 50 служащих.

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

Уничтожаются все ее строки, определения столбцов и табличные определения целостности. При наличии спецификации Веятетст выполнение оператора ОВОР тйвье отвергается, если имя таблицы используется в каком-либо определении представления или ограничения целостности*'. При наличии спецификации САВСАОЕ оператор выполняется в любом случае, и все определения представлений и ограничений целостности, содержащие ссылки на данную таблицу, также отменяются.

Средства определения и отмены общих ограничений целостности Виды ограничений целостности, с которыми мы имели дело в предыдущих разделах этой лекции, образуют иерархию (рис. 12.2). Ограничения целостности, входящие в определение домена, наследуются всеми столбцами„определенными на этих доменах, и являются ограничениями этих столбцов. Кроме того, в определение столбца могут входить определения дополнительных ограничений.

Ограничения целостности, входящие в определение столбца (включая ограничения, унаследованные из определения домена), являклся ограничениями таблицы, в состав опреде- " Не следует расценивать эти рассуждения как руководство к действию. Мы привели нх только для того, чтобы обосновать пример, хотя рассуждения, конечно, не лишены смысла. " Не считая те о~раничения целостности, которые (а) определены в составе определения данной базовой таблицы и (И не ссылаются на какие-либо другие базовые таблицы. 254 Лекция 12 С дства определения базовых таблиц и ограничений целостнасти ления которой входит определение данного столбца. Кроме того, в определение таблицы могут входить определения дополнительных ограничений. Но иерархия видов ограничений целостности этим не исчерпывается.

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

Рис. 12.2. Иерархия видов ограничений целостности Определение общих ограничений целостности Для определения общего ограничения целостности служит оператор СЕЕАТЕ АЕЕЕЕТТСИ, задаваемый в следующем синтаксисе: СЕЕАТЕ АЯЯЕЕТ10И сспвсгатпг пале СНЕСК (сопок спа1 ехргеавтсп) Заметим, что при создании общего ограничения целостности его имя всегда должно указываться явно. Хотя синтаксис определения общего ограничения совпадает с синтаксисом определений ограничений столбца и таблицы, в данном случае допускаются только специальные виды условных выражений. Мы не можем сейчас точно сформулировать свойства этих видов условий„поскольку отложили подробное рассмотрение разновидностей условных выражений до следующих лекций. Если говорить неформально, то особые свойства условий связаны с тем, что при определении общих ограничений целостности контекстом, в котором вычисляется условное выражение, является весь набор таблиц 25б Основы баэ данных Курс базы данных, а не набор строк таблицы, как это было при определении табличных ограничений.

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

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

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

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