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

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

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

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

Таким образом, мы не будем обсуждать его в этой книге, Хотя реляционное исчисление трудно для понимания и использования, его непроцедурный характер является преимуществом. Поатому разработчики СУБД начали поиск других непроцедурных стратегий, который привел к появлению третьей и четвертой категорий языков манипулирования реляционными данными.

Языки, ориентированныс на преобразования (Ггапз(ог>п-ог1епсег! 1апйцайез),— это класс непроцедурных языков, которые преобразуют входные данные, имеющие вид отношений, в результат, представляющий собой одно отношение. В этих языках имеются простые в псполъзованип структуры, позволяю>цие указать действия, которые необходимо совершить с предоставленными данными. 81)Т)АКЕ, 8Е>41>'ЕЬ и ЩЬ это примеры языков, ориентированных на преобразования. Язык 5Я1. будет подробно изучаться нами в главах 9, 12 и 13.

Четвертая категория языков манипулирования реляционными данными — это графические языки. К этой категории относятся запрос по образцу ((2пегу-ЬуЕхашр1е) и зопрос из формы (снегу-Ьу-Еогш). В числе продуктов, поддерживающих агу категория>, можно упомянуть АрргоасЬ (фпрмы Ьогпз) и Асссзз. Пользователю выдается графическое представление одного отношения или более.

Представление может ил>еть вил формы для ввода данных, электронной таблицы или какой-либо другой структуры. СУБД преобразует представление в соответствующее отношение и формирует запросы (скорее всего, на 5(1ь) от лица пользователя. После этого пользователи инипинруют выполнение операторов 1),:ч11, по они об этом не знают.

Четыре категории языков манипулирования реляционными данными; + реляционная алгебра; + реляционное исчисление; + языки, ориентированные на преобразования (например, ВСЕ.); + запрос по образцу, запрос из формы. Интерфейсы языков манипулирования данными В атом разделе мы рассмотрим четыре вида интерфейсов, с помощьк> которых осуществляется манипулирование >шформацией в базе данных. Манипулирование данными посредством форм В большинстве реляционных СУБД имеются средства для создания форм.

Некоторые формы генерируются автоматически при определении таблицы, другие должны создаваться разработчиком. Помощь в этом процессе может оказать интеллектуальный ассистент, присутствующий, например, в Ассезз. Форма может иметь вид таблицы (электроцной таблицы), в которой одновременно показывая>тся несколько строк отношения. Есть и другой вид форм, где каждая строка отношения представлчется отдельно. На рис.

8А и 8.5 приведены примеры обоих гипов форм для таблицы РАТ1сйТ с рис. 8.1. Болъшинство продуктов обсспечивак>т некоторую гибкость в обработке форм и отчетов. Например, строки для обработки могут выбираться по значениям столбцов и могут быть отсортированы. Таблица па рис. 8А отсортирована по значению поля Ассопл1!4пп>Ьег. Рис. 8.8.

пример однострочной экранной формы Рй>еу > 1/19/46 Р Аье1,' 6/19/67'М Мч/рпу 1 12/28>81 М 1С>а)е>чэЫ ! 10/21/73 Г ТИ9 ' 6/23/38 Р 0>хоя > 4/16/87 М Рис. 8.4. Пример табличной экранной 147 1яе 193 6Ы9Ь 289 ао9Ь 633 1.ечу 661 Брося 704 Ьечу формы 284 Глава 8. Основы построения реляционных баз данных Манипулирование реляционными данными 285 Многие формы, генерируемые по умолчанию, содержат в себе данные только из одного отношения. Если нужно получить данные из двух или более отпогпений, тогда, как правило, нужно создавать специальные формы с помои(ью средств СУБД.

Такие средства позволяют создавать как многотабличные, так н многострочные формы. Поскольку использование этих средств сильно зависит от конкретной СУБД, мы не будем рассматривать их далее. Интерфейс языка запросов и обновлений Второй тип интерфейса к базе данных — это язык запросов и обновлений (ппегу/ црдаге !апйцаяе), или просто язык запросов (г!вегу !апяпайе). (хотя большинство такого рода языков позволяют выполнять как запрос, так и обновление данных, их чаше всего называют языками запросов.) В этом случае пользователь вводит команды, которые указывают, какие действия необходимо произвести над базой данных.

СУБД расшифровывает эти команды и выполняет предписанные действия. Рисунок 8.6 показывает, какие программы участвуют в обработке запроса. Пользователь м( — ~ Или Пользователь < — ~ Операторы Команды Данные запроса СУБД Рис. 8.6. Программы, участвующие в обработке запроса Важнейшим из всех языков запросов является БО1. Чтобы дать вам представление о языках запросов, рассмотрим следующий БО1-оператор, который обрабатывает отношение РАТ1ЕМТ, показанное на рис. 8.1: 5ЕСЕСТ Маие.

ОагеОТВтггП ГРОМ РАТ1ЕМТ ММЕРЕ РПуаасаап = 'Сечу' Этот оператор извлекает из отношения РАТ1 ЕМТ все строки, в которых атрибут РПугйс!ап имеет значение 'Сечу'. Впаченпя атрибутов Маше и ОасеОГВМГП из этих строк он затем помещает во вторую таблицу. Хранимые процедуры Со временем полъзователи и разработчики баз данных обнаружили, что некоторые последовательности команд БО(. приходится выполнять регулярно. Единственное, что при этом меняется, — это значения, указываемые в предложении ГНЕВЕ. Например, при ежемесячном начислении платежей выполняются одни и те же БО1.-операторы, но с различной датой закрытия. Чтобы учесть эту потребность, производители СУБД ввели так называемые хранимые процедуры (агогед ргоседцгев).

Такая процедура представляет собой набор БО1-операторов, который хранится в файле и может быть запущен на выполнение одной командой. Параметры, указываемые в предложении УУНЕРЕ и т. д., могут передаваться при вызове процедуры. Примером может служить следующее: ОО В!СС!МО 5ТОРЕО РРОСЕООРЕ ГОР В!ССОАТЕ = "9/1У2000" Эта строка запускает хранимую процедуру под названием 81ШМО со значением параметра В1ЕСОАТЕ, равным "9/1/2000". По мере накопления разработчиками опыта выявилась одна проблема.

БЯ1 создавался как подъязык данных, и при этом не делалось попыток наделить его всеми элементами полноценного языка программирования. Однако некоторые из этих элементов были необходимы для написания хранимых процедур, и производители СУБД создали расширенные версии ЯЯЕ, включив в пих дополнительные возможности. Один такой язык, РЕ/БО!., был разработан для Огас1е, а еще один, под названием ТВАНБАСТ-ЯО1, — для БЯь Бегчег. Более подробно об этих языках вы узнаете пз глав 12 и 13, Специальный тип хранимой процедуры — тлриггер (Гнййег) — вызывается СУБД при выполнении заданного условия.

Например, в приложении, обрабатывающем заказы, разработчик должен создать триггер, который запускается в тех случаях, когда количество товара на складе оказывается ниже заданного предела (то есть пора заказывать товар у оптового поставщика). Более подробно о хранимых процедурах вы узнаете из глав 12 и 13. Интерфейс прикладных программ с!етвертый тип интерфейса доступа к данным — это доступ через прикладные программы, написанные на таких языках программирования, как СОВ01., ВА81С, Рег1, Рааса! и Сч-+.

Кроме того, некоторые прикладные программы пишутся на встроенных в используемые СУБД языках. Из таких языков программирования наибольшей известностью пользуется дВАБЕ. Есть два стиля интерфейса между прикладными программами и СУБД. Первый из нпх характеризуется тем, что прикладные программы вызывают подпрограммы пз библиотеки функций, поставляемой в комплекте с СУБД. Напрпмер, чтобы считать строку из таблицы, прикладная программа вызывает функцию чтения СУБД и персдает ей параметры, которые указывают нужную таблицу, требуемые столбцы, критерии выбора строки и т.

п. В некоторых случаях вместо вызовов функций используется объектно-ориентпровацньш синтаксис. В приведенном ниже коде Ассевв объектный указатель дЬ устанавливается на открытую в данный момент базу данных, а объектный указатель га ссьшается на строки таблицы РАТ1ЕМТ: аег бЬ = сиггепсбЫ ) вес га = бЬ.ОрепРесогбаес("РАТ!ЕМТ"Э С помощью последнего указателя можно обращаться к свойствам открытого набора записей и запускать его методы.

Например, с помощью свойства реляционная алгебра 287 Реляционная алгебра 286 Глава 8, Основы построения реляционных баз данных гз.А!1оигОе!ебопз можно определить, могут ли быть удалены записи пз набора записей РАТ1ЕИТ. Метод МотеГ1гзг перемещает курсор на первую строку. Второй, более старый тип интерфейса используется иногда в СУБД, предназначенных для болыних ЭВМ и серверов. Здесь производителем СУБД определен набор высокоуровневых команд доступа к данным. Эти команды, которые относятся к обработке базы данных и не являются частью какого-либо стандартного языка, встраиваются в код прикладной программы. Прикладная программа со встроенными командами передается па предварительный компилятор, входящий в комплект СУБД. Он транслирует операторы доступа к данным в корректные вызовы функций и определяет области данных, которые будут совместно использоваться прикладными программами и СУБД.

Предварительный компилятор также вставляет в программу код, поддерживающий доступ к этим областям данных. Обработанная такцм образом программа передается на языковой компилятор. На рис. 8.7 показано взаимодействие программ в этом процессе.

Рис. 8.7. Обработка программы со встроенными операторами 801 Помимо использования в обработке запросов, 51т! применяется в качестве языка доступа к данным в прикладных программах. В этом режиме операторы 5О!. встраиваются в программы и транслируются в вызовы функций предварительным компилятором. Тем самым уменьшается количество времени и денег, треоуемое на обучение персонала, поскольку один и тот же язык может использоваться как для запросов, так и для доступа к данным в прикладных программах. Необходимо, однако, преодолеть одно неудобство.

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

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

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

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