Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
база данных.docx
Скачиваний:
167
Добавлен:
24.03.2015
Размер:
5.83 Mб
Скачать

10.3.Средства поддержки проектирования

Разработчикам приложений предыдущих поколений СУБД приходилось раз- р [батыватл структуру БД, опираясь на теоретичесы й материа л. Средства разра ботки в СУБД были нед< ютаточно совершенны. В большинстве с. [учаев это были обычные языки программирования с внешними библиотеками подпрограмм.

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

Более интеллектуальные СУБД, в том числе Access, дополнительно пре­доставляют средства для предотвращения аномЛ/ош. К ним можно отнести средство помощи при создании таблиц (вспомогательное средство, не исполь­зуемое отдельно) и Мастер ana тза таблиц (основное средство).

Напомним, что перед созданием БД ее нужно спроектировать. Опреде­лить, сколько должно быть таблиц, как они между собой свя заны, какие у каждой из таблиц поля, есть ли ключи и прочее. Бывают ситуации, когда: о разрабатываемой информационной системе собрана не вся информация; ин- фо] 1мация собрана, но не систематизирована; данные, которые необходимо распределить но таблицам БД, импортированы из других СУБД или из тек­стовых файлов и др. В подобных случаях требуется анализ информации. Если объем ее значителен, обойтись без средств автоматизации очень слож­но.

Средство помощи создания таблиц БД при завершении создания табли цы предупрежда* т о желательности задать ключи в таблице, если они отсут­ствуют. Иметь ключи в таблице рекомендуется по двум причинам. Во пер­вых, при необходимости установления связей с другими таблицами, во-вторых, определение ключевых полей гарантирует хранение информации в таблице как минимум во второй нормальной форме, что уменьшает' риск появ |f ния аномалий.

Мастер анализа таблиц системы позволяет выполнять анализ и нор­мализацию таблиц. При этом исходная таблица, данные в одном или несколь­ких полях которой повторяются, разделяется на несколько свя 1анных таб­лиц. Разделение таблиц происходит так, чтобы информация не терялась. Пользователь может создать таблицы самостоятельно или с помощью Ма­стера.

Для выполнения анализа таблицы и/или ее норма гизации нужно открыть окно БД и выбрать в меню пункт Сервис | Анализ | Таблица (Tools | Analyze | Table) В результате запускается Мастер анализа таблиц. Возможность его использования предоставляется также после операций импорта данных из текстовых файлов или фай. юв электронных таблиц с помощью одного из Мастеров импорта.

При анализ* таблиц с помощью Мастера с целью нормализации исходной таблицы пользова гелю разрешается следующее: переименовыват ь новые таб­лицы, устанавливать и добавлять ключи, отменять предыдущие операции и выпо. [нять некоторые другие действия.

Проиллюс грируем работу Мастера анализа таблиц на примере таблицы «Устройства-J 1рошводители», содержимым которой является результат со­единения таблиц 02 и Д2. связанных по типу 1:М (см. подраздел 3.3). Полу­чим из этой таблицы ее исходные таблицы — О? и Д2.

Таблица «Устройства-Производители*

Код

Вид устройства

Фирма-производитель

Наличие

а

CD-ROM

Acer

Да

а

CD-ROM

Mitsumi

Нет

а

CD-ROM

NEC

Да

а

CD-ROM

Panasonic

Да

а

CD-ROM

Sony

Да

б

CD-Recorder

Philips

Нет

б

CD-Recordi !t

Sony

Нет

б

CD-Recorder

Yamaha

Да

в

Sound Blaster

Creative Labs

Да

Вызовем Мастер анализа таблиц и выполним с его помощью распределе­ние полей исходной таблицы по новым таблицам. Предлагаемая схема (мо­дель) данных показан? на рис. 10.3.

Амади, таблиц

Посильно ли мастер группирует данны '

Есл-t нет, перетащите поля с помощью мыши в подходящ** по смыслу i руты.

KdKet имена слг iye ■ ■ цэи оить ногым таблицам?

Ка !равило, имя таблицы ук^зыилт ко хр. нящи(.;я ь нгй данные.

ЭирМ* - Пр U И:- е. идите nt

Наличие rkX>cma»oe>.j Таблиц?2 ~

t

Отмена

<Ьазод

Дал

> [ Г0Т050 |

Рис. 10.3. Модель данных в окне Мастера анализа таблиц

286 Часть 3 Современные СУБД и их применение

Созданньк таблицы имеют следующий вид:

Таблица! Таблица2

Код

Вид устройства

а

CD-ROM

б

CD-Recorder

в

Sound Blaster

Фирма производитель

Наличие

Подстановка

Acer

да

a, CD-ROM

Mitsumi

нет

a, CD-ROM

NEC

да

a, CD-ROM

Panasonic

да

a, CD-ROM

Sony

да

a, CD-ROM

Philips

нет

б, CD-Recorder

Sony

нет

б, CD-Recorder

Yamaha

да

б, CD-Recorder

Creative Labs

да

в, Sound Blaster

Сравнение содержимого этих таблиц с таблицами 02 и Д2 показывает, что Таблица t и таблица 02 совпадают. Отличие таб. пищ Д2 и Таблица2 состоит в том, что пара ключевых полей («Код», «Фирма-производитель») назван? но­вым полем «Подстановка». Поле «Подстановка» выполняет такую же роль, как и два ключевых поля.

Кроме гого, Мастер анализа таблиц предлагает пользователю создать зап­рос, результатом выполнения которого оказывается исходная таблица. Для нашего примера Мастер создал запрос с именем «Устройст ва-Производите­ли», а исходную таблицу переименован в таблицу «Устройства-Производи- тели_СТАРАЯ». Таким образом, поставленная задача решена.