Главная » Просмотр файлов » Хомоненко А.Д., Цыганков В.М., Мальцев М.Г. - Базы данных. Учебник для высших учебных заведений (6-е изд.) - 2009

Хомоненко А.Д., Цыганков В.М., Мальцев М.Г. - Базы данных. Учебник для высших учебных заведений (6-е изд.) - 2009 (960530), страница 97

Файл №960530 Хомоненко А.Д., Цыганков В.М., Мальцев М.Г. - Базы данных. Учебник для высших учебных заведений (6-е изд.) - 2009 (Хомоненко А.Д., Цыганков В.М., Мальцев М.Г. - Базы данных. Учебник для высших учебных заведений (6-е изд.) - 2009) 97 страницаХомоненко А.Д., Цыганков В.М., Мальцев М.Г. - Базы данных. Учебник для высших учебных заведений (6-е изд.) - 2009 (960530) страница 972017-12-26СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

СУБД Visual FoxPro 8.0459или ключа-кандидата в родительской таблице. При этом возможен выбор одного из трех правил, приведенных в табл. 12.7.Т а б л и ц а 12.7Правила изменения значений первичного ключаНаименованиеОписаниеCascadeП р и и з м е н е н и и з н а ч е н и й полей первичного ключа или ключакандидата в родительской таблице автоматическиосуществляется и з м е н е н и е всех соответствующих значений вдочерней таблице — каскадное изменение.RestrictЗ а п р е щ а е т с я и з м е н е н и е п е р в и ч н о г о ключа или к л ю ч а - к а н д и д а т ав родительской таблице, если в д о ч е р н е й таблице и м е е т с я хотябы о д н а з а п и с ь , в н е ш н и й к л ю ч к о т о р о й с о д е р ж и т и з м е н я е м о езначение.IgnoreДопускается произвольное изменение значений полейпервичного ключа или ключа-кандидата родительской таблицы.Целостность данных не поддерживается.Выбор любого из правил осуществляется установкой соответствующегопереключателя.

Выбранное правило отображается в соответствующей строке столбца Update (обновить).При удалении записей из связанных таблиц (вкладка Rules for Deleting —правила удаления) требуется использование также трех правил (табл. 12.8).Таблица 12.8Правила удаления записей из связанных таблицОписаниеНаименованиеCascadeУдалениеприводиттаблицы,внешнегозаписей в родительской таблице автоматическик каскадному удалению всех записей дочернейимеющих аналогичные значения соответствующегоключа.RestrictЗ а п р е щ а е т с я удаление записи в родительской таблице, если вд о ч е р н е й т а б л и ц е и м е е т с я х о т я бы о д н а з а п и с ь , в н е ш н и й ключкоторой содержит значение, совпадающее со значениемпервичного ключа или ключа-кандидата в удаляемой записи. Припопытке удаления записи выдается с о о б щ е н и е об ошибке,которую можно обработать программно.IgnoreДопускается неограниченное удаление записей родительскойтаблицы.

Целостность данных не поддерживается.Часть 3. Современные СУБД и их применение460Правила для добавления записей применимы со стороны дочерней таблицы. Их всего два (табл. 12.9).Т а б л и ц а 12.9Правила добавления записейНаименованиеОписаниеRestrictЗапрещается добавление записи к дочерней таблице, если вродительской таблице отсутствует запись, значение первичногоключа или к л ю ч а - к а н д и д а т а к о т о р о й н е с о в п а д а е т со з н а ч е н и е мвнешнего ключа добавляемой записи.IgnoreДопускается неограниченное добавление записей в дочернюютаблицу. Целостность данных не поддерживается.По окончании выбора правил выйдем из Построителя, нажав ОК. Привыходе появляется запрос подтверждения сделанных изменений.

В случаеподтверждения в БД создается ряд хранимых процедур и триггеров. Если такие процедуры и триггеры уже существуют, то перед их перезаписью создается резервная копия. Теперь все наши требования по обеспечению ссылочнойцелостности данных сохраняются в словаре БД и реализуются при работе сней.При формировании правил ссылочной целостности (рис. 12.6) мы рассуждали следующим образом:1. Изменение значений ключевых полей родительских таблиц.

ТаблицаТ Р г е р является дочерней по отношению к таблицам T D o l g n и T_Stag,в свою очередь, для нее дочерней является таблица T Z a g r . Не будемисключать возможность изменения названия должности или фамилиипреподавателя. Соответствующие поля являются ключевыми. При необходимости такие изменения необходимо произвести в родительскихтаблицах соответственно: должность в — T_Dolgn, а фамилию в —Т Ргер. В этом случае они синхронно (каскадно) изменятся в дочернихтаблицах. Запретим изменения значений ключевого поля stag (стаж) вродительской таблице T Stag.2.

Удаление записей в родительских таблицах. Запретим удаление записей в родительских таблицах, имеющих в дочерних таблицах записи ссовпадающими значениями внешних ключевых полей.3. Изменение (добавление) записей в дочерней таблице. Запретим вводзаписей в дочерние таблицы, не соответствующие одной из записей вродительской таблице.Проверим средства обеспечения ссылочной целостности в действии.12. СУБД Visual FoxPro 8.0461Откроем БД Bdu с помощью команды File | Open (файл | открыть) системного меню Visual FoxPro (если она закрыта). В появившемся окне Конструктора БД откроем для просмотра таблицу Т_ргер.

Для этого установим курсорна эту таблицу и, вызвав всплывающее меню, зададим команду Browse (просмотр).Выполним изменение, например, название должности (преп па сг. преп.)сначала в дочерней, а затем в родительской таблице. Изменения будут виднытолько после обновления изображения таблицы (закрытия и повторного открытия таблицы).Замечание.При необходимости произвести добавление или изменение защищенныхданных (режим Restrict) нужно снять защиту и после выполнения требуемых действий повторно установить защиту.12.10. Создание запросовПосле создания таблиц БД и ввода в них данных требуется организоватьдоступ к хранящейся в БД информации для просмотра и обработки.

Одним изосновных способов решения названной задачи является создание запросов.СредстваформированиязапросовВыборка информации из БД может осуществляться: с помощью командыSELECT SQL языка Visual FoxPro, которая является аналогом соответствующей команды языка SQL; с помощью Мастера запросов и с помощью Конструктора запроса.Команда SELECT имеет множество возможностей (опций). Ее упрощенное представление имеет следующий вид:SELECT СгшсокВыбираемыхПолейFROM СписокТаблиц-исгочника данных [ INTO ИмяТаблицы получателя данных|[WHERE УсловиеВыборки][GROUP BY УсловиеГруппировки][ORDER BY УсловиеУпорядочивания выводимых данных][ТО FILE ИмяФайла | Т О PRINTER — направление вывода данных]Квадратные скобки указывают на необязательность опции.Конструктора запроса позволяет:• выбирать данные из одной или нескольких таблиц, используя сложныекритерии;Часть 3.

Современные СУБД и их применение462• устанавливать временные связи между таблицами;• выбирать поля и записи таблиц с требуемыми данными;• выполнять вычисления с использованием выбранных данных.Работа с Конструктором запроса сводится к заполнению форм запроса.Результатом запроса всегда является таблица, которая может быть сохраненав массиве или в созданной новой таблице, отображена на экране или оформлена в виде отчета.

Данные, содержащиеся в результирующей таблице, могутбыть представлены в виде графика или гистограммы. Рассмотрим формирование запросов с помощью Конструктора запроса.Для вызова Конструктора запроса после открытия БД можно воспользоваться командой File | New (файл | Создать) системного меню Visual FoxPro.При выполнении этой команды открывается диалоговое окно New (рис. 12.2),в котором нужно выбрать переключатель Query (Запрос) и нажать кнопкуNew File (Новый файл). В открывшемся диалоговом окне Add Table or View(Добавить таблицу или просмотр) следует выбрать одну или несколько таблиц и нажать ОК.

В результате откроется окно Конструктора запроса (рис.12.7), содержащее выбранные таблицы, а в системном меню Visual FoxPro появится пункт Query (Запрос).uery Designer - QuerylштшQuery Designer@ol%NI Wil oil <f|fiostagdolgnkafJ!lLfMds j | Join j Filter ] Order By j Group By j MiscellaneousAvailable fields:T_prep.fioT_prep.stagT_prep. dolgnT_prep.kafSelected fields:ijAdd A l l »R amovezl•:'< Remove AlFunctions and expressions:Рис. 12.7. Окно Конструктора запроса с таблицей T P R E P12.

СУБД Visual FoxPro 8.0463После того как определена таблица (одна или несколько) для формирования запроса в диалоговом окне Конструктора необходимо:• выбрать поля, содержащие искомые данные;• задать критерии выборки, упорядочения и группировки данных;• указать, куда выводится результат запроса.Д л я р е ш е н и я п е р е ч и с л е н н ы х задач К о н с т р у к т о р с о д е р ж и т : п а н е л ь д л я ото-бражения таблиц, используемых в запросе (в рассматриваемом примере наней находится одна таблица T_PREP), и вкладки (табл. 12.10).Таблица 12.10Назначение вкладок диалогового окна Конструктора запросовВкладкаНазначениеFieldsВыборка полей в результирующую таблицуJoinЗ а д а н и е условий объединения таблицFilterЗ а д а н и е фильтра (условий отбора записей)Order ByЗадание критерия упорядочиванияGroup ByЗ а д а н и е условий группировки данныхMiscellaneousДополнительные установки (признак выборки повторяющихсязначений, количество выбираемых данных)Поле Functions and expressions (функции и выражения) используется длявключения в запрос функции или выражения.По окончании формирования запроса в диалоговом окне Конструкторарезультат выполнения запроса можно оценить выполнив команду Query | RunQuery (Запрос | выполнить запрос) системного меню.Для повторного выполнения запроса, сформированного в окне Конструктора,его необходимо сохранить.

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

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

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