Главная » Просмотр файлов » Теория и практика построения баз данных

Теория и практика построения баз данных (1088289), страница 93

Файл №1088289 Теория и практика построения баз данных (Теория и практика построения баз данных) 93 страницаТеория и практика построения баз данных (1088289) страница 932018-01-12СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

АЕТЕЙ ТАВЕЕ МУТЯВЕЕ ОРОР СОСОМИ С1, Первый оператор добавляет столбец с именем С1 и присваивает ему тип числа длиной четыре символа. Второй оператор удаляет только что созданный столбец. Обратите внимание, что при создании столбца кл7очевое слово СОЕЕ) МИ опускается. При запуске этих команд вы получите короткое сообщение: «Таб!е ааегеб» (таблица изменена). Чтобы убедиться, что желаемые изменения действительно были произведены, просмотрите структуру таблицы с помощью оператора ОЕВСК1ВЕ. Ограничения на модификацию столбцов таблиц Столбец можно удалить в любой момент. При этом, однако, все данные из этого столбца будут потеряны.

Также в любой момент можно добавить пустой !И!)11) столбец. Чтобы добавить непустой (ИОТ ИОВЕ) столбец, сначала создайте его в таблице как пустой, заполните все его строки данными, а затем обьявите его непустым !ИОТ ИОЕ! ) с помсндью предложения М001ЕУ. Предположим, например, что вы добавили столбец С1 в таблицу Т1. После того как этот столбец будет заполнен в каждой строчке таблицы Т1, можно запустить следующий оператор; Теперь столбец С1 будет обязательно требовать присвоения значения. При модификации столбца вы можете увеличивать количество символов в текстовых столбцах и количество цифр в числовых столбцах.

Вы можете также свободно увеличивать или уменьшать количество цифр после десятичной точки. Если данный столбец имеет во всех строках нулевые значения, вы можете уменьшать длину текстовых и числовых данных, а также менять тип данных столбца. Контрольные ограничения Контрольные ограничения (сйесК сопэгга!пбэ) — это условия, налагаемые на возможные значения столбцов. Контрольные ограничения должны формулироваться так, чтобы результат их проверки принимал значение «истина» или «ложь» и чтобы для их вычисления использовались только константы и значения из текущей строки таблицы, на которой определено данное ограничение.

Контрольные ограничения не могут содержать вложенных запросов и последовательностей, а также не могут ссылаться на функцию 5уэОате. Контрольные ограничения могут создаваться вместе с таблицей или добавляться позднее. Примером первого случая является оператор При таком определении единственно возможными значениями для столбца 51а1е являются «СА», «СО» и «ИУ». Примером контрольного ограничения, добавляемого с помощью оператора АЕТЕК, может служить следующее выражение: ЯЕТЕЙ ТАВЕЕ ТРАИ5АСТ10И АОО СОИ5ТЙА1ИТ Оэ1еСЬесК СНЕСК!ОагеАссо)геб <- РвгспаэеОаге); Чтобы это ограничение работало, оба столбца — ОагеАссшгеб и ЙцгсйаэеОа1е— должны находиться в таблице ТКАИ5АСТ1ОИ.

Оператор АЕТЕК ТАВСЕ позволяет также снимать ограничения: ЯСТЕР ТАВЕЕ ТРАИ5АСТ10И ОКОЙ СОИ5ТРА1ИТ Оа1еСЬес1, Использование оператора А~ ТЕЙ ТАВ~ Е с контрольными ограничениями С помощью только что рассмотренного нами приема можно модифицировать таблицу АКТ15Т. В листинге 12. ! мы установили для столбцов В)пЬОа1е (дата рождения) и ОесеаэебОасе (дата смерти) тип данных Оа1е. Допустим, что пользователям базы данных не нужно, чтобы в этих столбцах хранилась полная дата, а нужен только год рождения или смерти художника. Предположим также, что из представленных в галерее художников нет ни одного, кто бы родился или умер ранее 1400 года или позже 2100 года. Так как мы еще не записывали никаких данных в эти столбцы, оба они имеют пустые значения, что позволяет нам менять тип данных, не удаляя сами столбцы.

Для этого нужно ввестя в 5Я1 Р!пэ такие командьс АЕТЕР ТЯВЕЕ АЙТ15Т НОВ!ЕУ В!ггЬОа1е ИовЬег(4): АЕТЕЙ ТАВ!.Е АЙТ15Т МОО!ЕУ ОесеаэеоОа1е Иивбег!4). Следующие два оператора устанавливают пределы значений столбцов В!И ЬОаге и ОесеаэебОаге: А!ТЕР ТЯВСЕ АЙТ15Т АОО СОИ5ТРА1ИТ ВОЕ)втг СМЕСк !В)гЬЬОа1е ВЕТИЕЕИ 1400 АИО 2100); АСТЕР ТАВЕЕ ЯКТ!5Т АОО СОИ5ТРА!ИТ ООШв)1 СНЕСК !ОесеазеЬОа1е ВЕТИЕЕИ 1400 ЯИО 2100); Рассмотрим следующие команды обновления: ОРОАТЕ АРТ!5Т 5ЕТ В)гЬЬОасе - 1870 ИНЕРЕ Иаве = 'М)го'; ОЙОАТЕ АЙТ15Т 5ЕТ В) ггЬОа1е = 1270 ИНЕЙЕ Раве = 'ТоЬеу'.

Первое обновление пройдет успешно, а второе нарушит ограничение и поэтому не будет выполнено, Попробуйте запустить эти операторы и посмотрите, каковы будут результаты. Представления Как говорилось в главе 10, представления в Я~Е отличаются от того, что мы на- зывали представлениями базы данных, Представление в 5Я1 — это результат Создание базы данных Огас!е 438 Рис.

12.9. Создание представления Рис. 12.10. Выборка из представления СРЕАТЕ Н!ЕМ Ч1 А5 5ЕЕЕСТ * ГРОЯ ЯРТ!5Т К!Тд РЕАО ОН!У; 438 Глава 12. Работа с базами данных в Огас!е 5О(:выражения, состоящего из операторов выборки, проектирования и соединения. Например, если соединить строки таблиц АРТ15Т, Н!ОРК и ТРАМ5, выбрать из этих строк определенные столбцы и применить к результируюшему отношению предложение «ННЕРЕ, то в результате получится некоторое представление. Важное ограничение 5Я1-представлений« состоит в том, чта они могут содержать не более одного многозначнога пути. К примеру, представление базы данных, изображенное на рис.

10.4, которое одновременно содержит данные из таблиц С05ТОМЕР, ТРАМ5 и С05ТОМЕР АРТ15Т 1МТ, невозможно реализовать в виде ЯО1-представления. Мы вернемся к этой теме позже, в главе 14, когда будем обсуждать ХМТ.. Несмотря на это ограничение, 5(2).-представления полезны. Ва-первых, они позволяют обеспечить более гибкую защиту таблиц. Это делается следующим образом: создается представление, содержащее все столбцы таблицы, но пользователям этого представления даются иные полномочия, чем пользователям самой таблицы или других ее представлений.

Во-вторых, с помошыо представлений можно ограничивать доступ к определенным столбцам или строкам. Например, можно создать представление таблицы СОТРУДНИК, в котором будет отсутствовать столбец Зарплата, а также будут опущены все данные об администрации. Третье, для чего могут использоваться представления, — это соединение таблиц. Идея заключается в том, чтобы пользовател1о не приходилось самому выполнять соединение, а достаточна было бы просто запросить соответствующее представление. При этом структура таблицы оказывается скрытой от пользователей, что иногда бывает желательно.

Создание представлений На рис. 12.9 показан процесс создания и использования простого представления. Здесь определено представление Н1, состоящее из единственного столбца— столбца Мате из таблицы С05ТОМЕР. Когда пользователь выбирает все столбцы представления (с памошью клавиши '), результат содержит только столбец Малое.

Ни один из прочих столбцов таблицы С05ТОМЕР пользователю не показывается, поскольку они не входят в данное представление. Более сложное представление показано в листинге 12.4. Это представление соединяет три таблицы и затем налагает условие на столбцы АсйшебБапРпсе и Сиз!отсек!0. Представления, подобные этому, называют иногда предстаеленияии соединения Ца!и ч!еи'з), поскольку они базируются на соединениях. Обратите внимание, что оператор 5е!ест на рис. 12.10 не содержит ни соединения, ни предложения !ННЕРЕ. Соответствующие операции выполняются «за кулисами», при построении представления. Листинг 12.4. Создание представления СРЕАТЕ Н!ЕМ Екрепз1чедг! А5 5Е!ЕСТ Мазе.

Сору. Т!11е ГРОМ АРП5Т, МОРК. ТРАМ5АСТ!ОМ МНЕРЕ АРТ!5Т.Аг!111!О = ИОРК.Яг!1з1!О АМО НОРК Маг!10 = ТРАМ5АСТ!ОМ МагК!О АЧО Асдата111опРгпсе > 10000 АЫО Саз!оиег!О !5 МОЕ!; Вообще говоря, представления, основанные на одной таблице, допускают обновление данных, Если это почему-либо нежелательно, вы можете создать представление только для чтения, добавив выражение НК1ТН РЕАО ОМ!У в конец определения представления. Так, выражение создаст представление, доступное только для чтения. Иногда для обновления данных в представлении можно использовать БО1.- аператор 0РОАТЕ, но это возможно только в особых обстоятельствах и только в там случае, если изменение затрагивает только одну таблицу. В общем же случае оператор 0РОАТЕ не может использоваться для обновления данных в представлении.

Для этих целей вам потребуется написать специальный триггер, называемый замещающим триггером (триггер 1М5ТЕАО ОГ). Мы будем рассматривать такие триггеры в следующем разделе. 440 Глава 12. Работа с базами данных в Огас)е Логика приложения 441 Логика приложения Есть много способов обработки баз данных Огас!е из приложений.

Один из способов заключается в том, чтобы создавать приложения на Сн-ь, Стт, 5ака, 'тг!впа) Вагйс или каком-либо другом языке программирования и вызывать из них программы Огас1е. Как говорилось в главе 8, для этого можно воспользоваться кодовыми библиотеками Огас1е илн задействовать промышленные стандарты ОТТВС или 5Г)ВС. Примеры последнего подхода будут продемонстрированы в главах 15 и 16. Другой способ обработки баз данных Огас!е состоит в написании процедур на Р1./5ОП Эти процедуры можно хранить в виде файлов, запускаемых по команде 5ТАРТ в 5Я1 Р!пв, в виде хранимых процедур в базе данных, а также в виде триггеров, которые вызываются при наступлении определенных событий. Рассмотрим каждый из этих вариантов.

Обработка файлов Р~ /8СИ Если пользователь базы данных имеет доступ к ВЯЖИ. Р1пв, он может сохранить операторы РТ./5О1 в файле и запускать их напрямую командой 5ТАРТ. с(зшйл, содержащий оператор 5ЕЕЕСТ * ГРОМ Ехрепзткедгь: ! можно сохранить под именем То5е!!.во!.

Пользователь откроет 5ОТ. Р!пв и введет команду 5ьаст ТО5Е)); В результате будут выведены данные из представления Ехрепв!кедг!. В реальности большинство пользователей в деловом мире не имеет доступа к 5О) Р!пв, а если бы н имели, то вряд ли работа с этой программой пришлась бы им по вкусу. Однако этот стиль обработки используется администраторами и разработчиками баз данных для автоматизации рутинных задач администрирования. Хранимые процедуры Хранимая процедура — это программа на языке РТ./5ОТ. или 5ака, которая хранится в базе данных.

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

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

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

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