
- •Предисловие
- •Концептуальная модель предметной области
- •Контрольные вопросы
- •Проектирование базы данных
- •Логическая модель базы данных
- •Создание Логической модели бд вVisio
- •Физическая модель базы данных
- •Контрольные вопросы
- •Создание базы данных
- •Подключение кMssqlServer2012
- •Создание новой базы данных на сервере
- •Создание новой таблицы на сервере
- •Создание связей
- •Создание диаграммы базы данных
- •Ограничения целостности базы данных
- •Сценарий создания базы данных
- •Контрольные вопросы
- •Заполнение базы данных
- •Загрузка информации в базу данных средствамиManagementStudio
- •Ведение базы данных средствамиSql
- •Sql-запросы на вставку, модификацию и удаление данных
- •Добавление новых записей в таблицу (insert)
- •Модификация существующих записей (update)
- •Удаление записей из таблицы (delete)
- •Контрольные вопросы
- •Запросы на выборку данных
- •Общий синтаксис запроса select
- •Примеры реализации запросов
- •Контрольные вопросы
- •Организация бизнес-логики
- •Хранимые процедуры
- •Триггеры
- •Контрольные вопросы
- •Администрирование сервера бд
- •Инсталляция сервера
- •Резервное копирование и восстановление бд
- •Санкционирование доступа
- •Приложение а. Варианты заданий
- •Приложение б. Состав отчета
- •Список литературы
- •Оглавление
- •153003, Г. Иваново, ул. Рабфаковская, 34.
Создание Логической модели бд в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.Свойства отношения («Определение»)
Задание:постройте логическую модель базы данных в соответствии с описанием предметной области из вашего варианта задания.
Физическая модель базы данных
Физическая модель– логическая модель базы данных, выраженная в терминах языка описания данных конкретной СУБД.
Физическая модельбазы данных содержит все детали, необходимые конкретной СУБД для создания базы: наименования таблиц и столбцов, типы данных, определения первичных и внешних ключей и т.п. (рис. 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
Задание:постройте физическую модель базы данных в соответствии с описанием предметной области из вашего варианта задания. Для этого воспользуйтесьуже имеющейся логической моделью базы данных.