МДК 11. Лек 2 МДК 11.01. 2 Обзор современных инструментальных средств разработки схемы базы данных
Скачать 35.29 Kb.
|
2. Основные принципы и средства построения концептуальной, логической и физической модели данных 2.1. Обзор современных инструментальных средств разработки схемы базы данныхКонцептуальное проектирование БД необходимо для создания информационной модели предприятия (предметной области), не зависящей от каких- либо физических условий реализации. К последним относятся: тип СУБД, --- программ приложения, используемый язык программирования, конкретная вычислительная платформа и другие физические особенности реализации. Логическое проектирование БД необходимо для создания информационной модели предприятия на основе разработанного концептуальной модели с учетом используемого типа СУБД (но не конкретной СУБД и прочих физических условий реализации). Физическое проектирование БД - это процесс создания описания конкретной реализации БД с учетом особенностей выбранной СУБД. Эта фаза заканчивается созданием конкретной БД для создаваемого приложения, на основании разработанной ранее логической модели. Проектирование базы данных может предусматривать выбор наиболее подходящего инструмента автоматизированного проектирования - CASE-инструмента (Computer-Aided Software Engineering). В самом широком смысле термин CASE- инструмент применим к любым средствам автоматизированного проектирования и создания программ. CASE- инструменты могут включать следующие компоненты: словарь данных, предназначенный для хранения информации в данных, используемых в создаваемом приложении; инструменты проектирования, обеспечивающие проведение анализа данных; инструменты разработки модели данных предприятия (модели бизнес-процесса), а также концептуальных и логических моделей данных; инструменты, позволяющие создавать прототипы приложений. Использование CASE-инструментов позволяет существенно повысить производительность труда при разработке приложений баз данных. 2.2. Концептуальная модель данныхКонцептуальная модель данных отображает обобщающее представление о данных, не зависимое от типа выбранной СУБД. Она описывает то, какие данные хранятся в базе данных, а также связи, существующие между ними. Фактически это полное представление требований к данным со стороны организации, у которой работают пользователи. Сущность: информационный объект, относящийся к деятельности предприятия Атрибут: характеристика сущности Связь: связь сущностей между собой, обычно между двумя сущностями, а в общем – между n сущностями; осуществляется через связь экземпляров одной сущности с экземплярами другой сущности Роль: определяется с каждой стороны связи. Определяет смысл участия соответствующей сущности в данной связи (например, родительская сущность, дочерняя сущность) Кардинальность связи: максимальное количество экземпляров одной сущности, связанных с одним экземпляром другой сущности Управляемость ролью: показывает, что данная сущность является дочерней сущностью родительской сущности Ограничения роли: механизм поддержания целостности связей Ключ: может быть первичным или потенциальным. Зависимость (подчиненность) ключа: определяется для первичных ключей и суперключей. Сущность представляет собой любой абстрактный или конкретный 2.3. Логическая модель данныхЛогическая модель данных – это модель данных логического уровня не привязанная ни к какой конкретной СУБД. Конкретные СУБД (Oracle, Firebird и т. д.) и такие специфические понятия баз данных как индексы, триггеры и т.д. будут рассмотрены в дальнейшем. Перед созданием логической модели данных необходимо изучить такие понятия логической модели данных, как: таблицы, столбцы; первичные, потенциальные и внешние ключи; нормальные формы и правила ссылочной целостности. Сначала ознакомимся с некоторыми основными терминами реляционных баз данных и моделирования логических структур данных (см. табл. 2). Таблица 2. Основные термины
2.4. Методы организации целостности данных Ограничения целостности данных представляют собой такие ограничения, которые вводятся с целью предотвратить помещение в базу противоречивых данных. Рассмотрение вопросов целостности данных является обязательным на внешнем уровне представления БД, Полное и точное представление пользователя можно получить только после определения ограничений, необходимых с точки зрения сохранения целостности данных. Существует пять типов ограничений целостности данных: обязательные данные; ограничения для атрибутов; целостность сущностей; ссылочная целостность; требования данного предприятия. Обязательные данные – некоторые атрибуты всегда должны содержать одно из допустимых значений. Эти атрибуты не могут иметь пустого значения. Так, каждый работник должен занимать ту или иную должность. Ограничения для атрибутов – каждый атрибут должен иметь набор допустимых значений. Набор допустимых значений атрибута носит название домен. Например, атрибут «Пол» имеет домен, состоящий из двух допустимых значений «М» и «Ж». Целостность сущностей – первичный ключ любой сущности не может содержать пустого значения. Сущность «отдел» должна содержать уникальное значение атрибута первичного ключа – «No отдела». Первичный ключ – это атрибут, который выбран для уникальной идентификации записей БД (в отношении). Ссылочная целостность – внешний ключ связывает каждую строку зависимого отношения с той строкой первичного отношения, которая содержит это же значение соответствующего первичного ключа. Понятие ссылочной целостности означает, что если внешний ключ содержит некоторое значение, то оно обязательно должно присутствовать в первичном ключе одной из строк родительского отношения. Каждый работник работает в одном из отделов предприятия. Требования данного предприятия – ограничения предприятия называются бизнес-правилами. Один работник не может участвовать в выполнении более трех проектов. 2.5. Физическая модель данныхФизическая модель данных – это логическая модель данных, учитывающая особенности специфической целевой СУБД, такой как, например, Oracle или Informix. Существует два способа создания физической модели: ее можно создать с нуля или из существующей реляционной модели данных. Для всех таблиц модели необходимо определить типы данных. Индексы в базе данных используются в следующих основных случаях: Ускорение выполнения запросов. Обеспечение уникальности значений в полях. Ограничение первичного ключа требует, чтобы во всей таблице не нашлось двух одинаковых значений полей, входящих в первичный ключ. Чтобы выполнить это условие, необходимо при каждой вставке новой записи производить поиск такого же значения, которое будет вставлено. Для поиска записей используется уникальный индекс. Обеспечение ссылочной целостности. Ограничения внешних ключей используются для проверки того, чтобы вставляемые в таблицу значения обязательно существовали в другой таблице. При создании внешнего ключа индекс применяется для проверки условий внешнего ключа. Команда на языке SQL называется запросом. Все SQL запросы можно условно разделить на два вида: статический SQL запрос, включается в код приложения во время его разработки и не изменяется во время выполнения приложения, динамический SQL запрос, создается и изменяется в ходе выполнения приложения. Все операторы и команды языка SQL можно разделить на три группы: операторы определения данных, предназначенные для создания, удаления и изменения структуры данных. CREATE TABLE – для создания таблицы базы данных ALTER TABLE – изменяет таблицу DROP TABLE – удаляет таблицу CREATE NDEX – создает индекс DROP INDEX – удаляет индекс операторы управления данными предназначены для управления привилегиями доступа к данным: GRANT – назначает привилегии пользователям REVOKE – удаляет привилегии пользователей операторы манипулирования данными предназначены для работы с записями таблиц: SELECT – для выборки записей по определенному формату: UPDATE – для изменения записей INSERT – вставляет новые записи в таблицу DELETE – удаляет записи из таблицы Результатом выполнения запроса является набор данных, который называется результирующим набором данных. Для обеспечения эффективного доступа к данным в реляционных СУБД поддерживаются такие объекты как индекс и функция. Таблица 3 содержит список команд SQL в соответствии с принятым стандартом, за исключением некоторых практически не используемых в диалекте СУБД Firebird команд. Таблица 3. Список команд языка SQL
Набор команд SQL, перечисленный в таблице, не является полным. Этот список приведен, чтобы составить представление о возможностях SQL в целом. Для получения полного списка команд следует обратиться к соответствующему руководству для конкретной СУБД. Следует помнить, что SQL является единственным средством общения всех категорий пользователей с реляционными базами данных. |