Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Применение подстановки




 

В связываемых таблицах реляционных БД имеются поля, по ко­торым устанавливается связь. Для отображения информации из подтаблицы проще и на­гляднее в этом случае использовать подстановку.

Например, требуется в таблице Успеваемость отображать не коды предметов, а их названия. Для этого необходимо открыть таблицу Успеваемость в режиме конструктора и выбрать для по­ля КодПредмета в списке Тип данных пункт Мас­тер подстановок. Данное действие запустит мастер подстановок, на первом этапе работы которого необходимо ус­тановить, из какого источника столбец подстановки будет полу­чать данные. Так как название предмета находится в таблице Предметы, то необходимо выбрать первый пункт.

На втором этапе нужно выбрать таблицу (или запрос), которая будет использоваться в качестве источника данных, т. е. таблицу Предметы, и нажать кнопку Далее.

Следующий этап предполагает выбор поля (или полей) значения которого будут использоваться в столбце подстанов­ки. В данном случае нужно в список выбранные поля перемес­тить поле Название и нажать Далее.

На четвертом этапе работы мастера можно установить шири­ну полей, которые будут содержаться в столбце подстановки, а также установить флажок Скрыть ключевой столбец, для того чтобы не отображались коды предметов и затем нажать Далее.

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

В результате при просмотре содержимого таблицы Успевае­мость вместо столбца КодПредмета будет отображаться столбец Предмет, в котором находится не код предмета, а его название. Чтобы изменить содержимое столбца подстановки для какой либо записи, например, для первой, нужно установить курсор в столбец Предмет, развернуть с помощью стрелки список имею­щихся предметов и выбрать требуемое название предмета. Однако это не означает, что в поле подстановки будут записываться текстовые значения названий предметов. Все равно в качестве связующего поля используется КодПредмета, просто в этом случае изменяется способ отображения информации. В этом легко можно убедиться, если изменить название предмета в таб­лице Предметы. Данное действие приведет к тому, что внесенное изменение автоматически отобразится в поле подстановки табли­цы Успеваемость.

Анализ таблиц

 

Даже при самой тщательной разработке структуры БД может возникнуть ситуация, когда в одной таблице хранятся повторяю­щиеся данные. При работе с большими объемами информации это приводят к нерациональному ислользованию дискового про­странства и к увеличению продолжительности обработки БД. Чтобы определить, не встречаются ли в той или иной таблице часто повторяющиеся данные, можно воспользоваться средством анализа таблиц.

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

В рассматриваемом примере не составит никакого труда раз­вить таблицу КопияПредметы на две таблицы, чтобы в одной таблице (Предметы) хранилась информация о предметах и коды преподавателей, а в другой таблице (Преподаватели) уникальные коды и фамилии преподавателей. Однако если в таблице содержится несколько сотен или тысяч записей, то разбить ее на несколько таблиц будет весьма затруднительно. Для решения подобных задач следует использовать процедуру анализа таблиц.

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

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

Если в таблице повторяющиеся данные встречаются достаточно часто, то на очередном этапе мастер анализа предложит разгруппировать эту таблицу, чтобы в каждой из полученных таблиц хранились только уникальные данные. В рассматривае­мом примере предлагается разбить таблицу КопияПредметы на две таблицы.

В данном случае мастер предложит правильный способ раз­биения одной таблицы на две с установлением связи "многие к одному". Если же группировка данных была выполнена не со­всем верно, т. е. некоторые поля должны находиться в другой таблице, или группировка выполняется вручную, то требуемое поле можно перетащить из одной таблицы в другую.

Чтобы изменить предлагаемое название таблицы, нужно выделить таблицу, и затем, нажав кнопку Переименовать таблицу указать в диалоговом окне новое имя например, Предметы1.

Аналогичным образом для второй таблицы следует изменить название с Таблица2 на Преподаватели1. Для получения спра­вочной информации по поводу данного этапа работы мастера анализа можно воспользоваться кнопкой Справка. После проверки размещения полей и указания названий для таблиц сле­дует нажать кнопку Далее.

На следующем этапе следует проверить, правильно ли уста­новлены ключевые поля новых таблиц. Чтобы сделать в таблице одно из имеющихся полей ключевым, в частности поле Код-Предмета таблицы Предметы 1, нужно выделить это поле и нажать в окне мастера кнопку Ключевое поле. Если же необхо­димо создать новое поле в качестве первичного ключа, то следует воспользоваться кнопкой Добавить ключ. После определе­ния ключевых полей нужно нажать Далее.

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

В результате будут получены две новые таблицы. Таблица Предметы1 содержит поля КодПредмета, Название и КоличествоЧасов, а также поле Подстановка, в котором ото­бражаются фамилии преподавателей из таблицы Преподаватели1.

 





Поделиться с друзьями:


Дата добавления: 2015-05-26; Просмотров: 509; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.