База данных: назначение, создание схемы данных.

Наиболее ценное свойство базы данных – централизованное управление данными, оно предоставляет следующие преимущества:

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

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

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

4. Обеспечение целостности данных. Данная задача заключается в гарантированной поддержке корректности данных в базе. Противоречивость между двумя записями, представляющими один «факт», является примером утраты целостности данных. Нарушение целостности может возникнуть при наличии избыточности в хранимых данных, но даже при отсутствии избыточности база данных может содержать некорректную информацию

5. Организация защиты данных. Представляет собой возможность установления ограничений защиты (security constraints), т.е. правил, которые будут проверяться при любой попытке доступа к уязвимым данным. Можно установить различные правила для разных типов доступа (выборка, вставка, удаление и т.д.) к каждому из элементов данных в базе данных. Цетрализованная природа системы баз данных требует наличия надежной системы защиты.

6. Возможность балансировки противоречивых требований. Зная общие требования всего предприятия (а не требования каждого отдельного пользователя), администратор базы данных может структурировать базу данных таким образом, чтобы обслуживание было наилучшим для всего предприятия.

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

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

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

База данных – совокупность взаимосвязанных хранящихся вместе с отношениями между ними устойчивых данных при наличии такой минимальной избыточности, которая допускает их независимое использование оптимальным образом для одного или нескольких приложений.

Создание схемы данных

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

Механизм описания логических связей между таблицами в Access реализован в виде объекта, называемого Схемой данных. Перейти к ее созданию можно из панели инструментов База данных, доступной из главного окна. Альтернативный вариант вызова данного режима доступен через меню Сервис > Схема данных. Вид, который будет иметь схема данных для построенных на предыдущих шагах таблиц, представлен на рис.

Хочется еще раз обратить внимание читателя на то, что выбор типа бумаги осуществляется из заранее предопределенного списка.

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

Важнейшей задачей, которую позволяет решать схема, является обеспечение логической целостности данных в базе. Так, в базе данных TradeTest нарушение целостности может возникнуть в случае удаления из таблицы Бумаги записей по тем бумагам, о которых существуют записи в таблицах Портфели или Заявки, в результате чего в их составе окажутся ссылки на "потерянные" коды. Очевидно, что это можно предотвратить, если каскадно удалить как записи из таблицы Бумаги, так и записи из связанных с ней таблиц. Такой эффект в Access может быть достигнут за счет задания определенных свойств для связи. Чтобы это сделать, необходимо щелкнуть кнопкой мыши, находясь на линии схемы, обозначающей связь. После этого появляется диалоговое окно, предназначенное для изменения свойств связи.

Наши рекомендации