Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие. Ратманова. Булатова..doc
Скачиваний:
143
Добавлен:
07.03.2015
Размер:
4.54 Mб
Скачать
    1. Создание Логической модели бд вVisio

Чтобы создать Логическую модель базы данных в Visio2010, выберите Категорию шаблонов «Программы и базы данных», а в ней шаблон «Схема модели базы данных» (рис. 2.3)

Рис. 2.3. Шаблон «Схема модели базы данных»

Прежде, чем приступить к созданию Логической модели, зайдите на вкладку «База данных» и в «Показать параметры» выставьте следующие настройки (рис. 2.4-2.6).

Рис. 2.4.Параметры документа (вкладка «Общие»)

Рис. 2.5.Параметры документа (вкладка «Таблица»)

Рис. 2.6.Параметры документа (вкладка «Отношение»)

Чтобы создать Сущность «Деталь», перетащите стереотип Сущность с панели инструментов на экран (рис. 2.7).

Рис. 2.7.Создание Сущности

Задайтеимяновой Сущности в свойствах в нижней части экрана (рис. 2.8).

Рис. 2.8.Свойства Сущности («Определение»)

Затем на вкладке Столбцы создайте атрибуты Сущности, отметьте уникальный идентификатор (первичный ключ) галочкой в столбце PK и нажмите кнопку «ОК» (рис. 2.9).

Рис. 2.9.Свойства Сущности («Столбцы»)

Аналогично создайте вторую сущность, например «Материал». Чтобы создать связь между ними, перетащите стереотип «Отношение» точкой на изображение класса «Деталь», т.к. из каждого материала изготавливается ноль, одна или несколько деталей. Затем второй конец связи перетащите на изображение класса «Материал» (рис. 2.10). Внешний ключ «Код материала (FK)» автоматически появится в составе атрибутов сущности «Деталь».

Незакрашенный ромб со стороны Материала означает, что материал может быть не указан. Чтобы убрать ромб, откройте свойства сущности «Деталь» и поставьте этому атрибуту галочку в столбце «Обязательное».

Рис. 2.10.Свойства отношения («Определение»)

Задание:постройте логическую модель базы данных в соответствии с описанием предметной области из вашего варианта задания.

    1. Физическая модель базы данных

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

Физическая модельбазы данных содержит все детали, необходимые конкретной СУБД для создания базы: наименования таблиц и столбцов, типы данных, определения первичных и внешних ключей и т.п. (рис. 2.11).

Физическая модель строится на основе логической с учетом ограничений, накладываемых возможностями выбранной СУБД (в нашем случае - MSSQLServer2012):

Имена

Имена таблиц и столбцов должны быть записаны латинскими буквами, без пробелов, начиная с буквы.

Типы данных

Для каждого атрибутанеобходимо определить тип данных его значений (табл. 2.2).

Связи

Реляционная модель данных требует преобразованиясвязей «многие ко многим» и иерархии наследования и допускает их только науровне логическоймодели базы данных.

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

Преобразование связи «многие ко многим» (таблицы «Поставка» и «Способ доставки») включает создание новой таблицы развязки и двух новых связей «один ко многим» от старых таблиц к новой.

Таблица 2.2. Основные типы данных в MSSQLServer

Тип данных

Описание

Целые числа

bigint

Целочисленные данные от -263до 263-1

int

Целые числа от -2147483648 до 2147483647

smallint

Целые числа от -32768 до 32767

tinyint

Целые числа от 0 до 255

Вещественные числа

decimal / numeric

Являются синонимами. Заданная точность и масштаб от -1038-1 до 1038-1

float

Приближенные числовые данные от -1,79Е+308 до 1,79Е+308

real

Частный случай типа float, от -3,40Е+38 до 3,40Е+38

money

Количество денежных единиц от -263 до 263 с точностью до четырех десятичных позиций

smallmoney

Денежные единицы от -214748,3648 до 214748,3647

Дата и время

datetime

Данные о дате и (или) времени, которые относятся к периоду с 1 января 1753 года по 31 декабря 9999 года, определяемые с точностью до трех сотых секунды

smalldatetime

Данные о дате и (или) времени, которые относятся к периоду с 1 января 1900 года по 6 июня 2079 года, определяемые с точностью до одной минуты

date

Дата с точностью до дня, занимает 3 байта

Строки

char(n)

Символьные данные фиксированной длины. Значения данных с длиной короче заданной заполняются пробелами до указанной длины. Максимальное заданное значение длины - 8000 символов.

varchar(n)

Символьные данные переменной длины. Значения данных с длиной короче заданной не дополняются пробелами. Максимальное заданное значение длины - 8000 символов, но для обозначения длины можно использовать ключевое слово max, что позволяет определять столбцы с символьными данными объемом до 231байтов.

nchar (n)

Символьные данные в кодировке Unicode фиксированной длины. Максимальное заданное значение длины может составлять 4000 символов.

nvarchar (n)

Символьные данные в кодировке Unicodeпеременной длины.Максимальное заданное значение длины может составлять 4000 символов, но для обозначения длины можно использовать ключевое слово max, что позволяет определять столбцы с символьными данными объемов до 231 байт.

text / ntext

Устаревший тип данных, вместо него следует использовать тип varchar (max) / nvarchar (max).

binary

Двоичные данные фиксированной длины с максимальной длиной 8000 байт.

varbinary

Двоичные данные переменной длины с максимальной указанной длиной 8000 байт, но для обозначения длины можно использовать ключевое слово max, что позволяет определять столбцы типаLOB, имеющие объем до 231байт

image

Устаревший тип данных, вместо него следует использовать тип данных varbinary (max).

table

Данные типа таблицы, предназначены для использования в работе с результирующими наборами. Как правило, они передаются из пользовательских функций. Применение данных типа table в определениях таблиц не допускается.

sql_variant

Данные различных типов.

xml

Определяет символьное поле как содержащее данные XML.

Timestamp / rowversion

Специальное значение, которое является уникальным в пределах данной базы данных. Устанавливается автоматически.

uniqueidentifier

Специальный глобально уникальный идентификатор (GUID). Уникальность любого идентификатораGUIDв пространстве и времени является гарантированной.

Рис. 2.11. Физическая модель базы данных в нотации IDEF1X

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