- •Предисловие
- •Анализ предметной области
- •Анализ требований. Диаграмма вариантов использования
- •Диаграмма вариантов использования
- •Концептуальное моделирование предметной области
- •Проектирование базы данных
- •Логическая модель базы данных
- •Физическая модель базы данных
- •Создание базы данных
- •Подключение к серверуMssqlServer2008r2
- •Создание новой базы данных на сервере
- •Создание новой таблицы на сервере
- •Создание связей
- •Создание диаграммы базы данных
- •Ограничения целостности базы данных
- •Сценарий создания базы данных
- •Заполнение базы данных
- •Загрузка информации в базу данных средствамиManagementStudio
- •Ведение базы данных средствамиSql
- •Sql-запросы на вставку, модификацию и удаление данных
- •Добавление новых записей в таблицу (insert)
- •Модификация существующих записей (update)
- •Удаление записей из таблицы (delete)
- •Запросы на выборку данных
- •Общий синтаксис запроса select
- •Примеры реализации запросов
- •Организация бизнес-логики
- •Хранимые процедуры
- •Триггеры
- •Прикладной программный интерфейс субд
- •Знакомство с основными объектами ado.Net
- •Разработка клиентского приложения
- •Пример разработки: иас «Оптовый заводской склад»
- •Реализация основных функций Системы
- •Ведение основных справочников и оформление поставок деталей
- •Организация поиска поставок деталей
- •Администрирование сервера бд
- •Инсталляция сервера
- •Резервное копирование и восстановление бд
- •Санкционирование доступа
- •Приложение а. Варианты заданий
- •1. Биржа труда
- •2. Проектная организация
- •3. Библиотечный фонд города
- •4. Турагентство
- •5. Регистратура городской поликлиники
- •6. Гибдд
- •7. Оператор сотовой связи
- •8. Аптека
- •9. Аудиторный фонд университета
- •10. Агентство недвижимости
- •11. Студенческий городок
- •12. Санаторий
- •13. Продуктовый магазин
- •14. Научные публикации вуза
- •15. Служба такси
- •16. Страховое агентство
- •17. Сайт купонов на скидки
- •18. Учебный план
- •19. Преподаватели университета
- •20. Расчет стипендии
- •21. Расписание занятий
- •Приложение б. Состав отчета
- •Список литературы
- •153003, Г. Иваново, ул. Рабфаковская, 34.
Создание связей
Связи между таблицами в MSSQLServerзадаются в виде ссылок, т.е. внешних ключейFOREIGNKEY.
Рассмотрим установление связи в среде ManagementStudioмежду таблицами «Деталь» и «Материал». Для этого необходимо открыть окно редактирования структуры таблицы «Деталь», с помощью пункта «Проект» контекстного меню этой таблицы.
Далее в контекстном меню открывшегося окна редактирования следует выбрать пункт «Отношения» или же воспользоваться одноименной кнопкой на панели инструментов. На экране появится окно «Отношения внешнего ключа», изначально пустое.
Для добавления нового внешнего ключа следует нажать кнопку «Добавить» в нижнем правом углу окна. Далее в появившемся шаблоне настройки внешнего ключа (рис. 3.7) необходимо выделить строку «Спецификация таблиц и столбцов» и нажать на кнопку с многоточием в этой строке справа.
На экране появится окно настройки связи между таблицами (рис. 3.8). Здесь в разделе «Имя отношения» можно задать название создаваемой связи или же оставить название по умолчанию.
Рис. 3.7. Окно добавления / удаления отношений между таблицами
В разделе «Таблица первичного ключа» (слева) из выпадающего списка следует выбрать соответствующую таблицу (в нашем примере – таблицу «Материал»), а в строке / строках ниже указать первичный ключ этой таблицы (поле «Код материала»).
Рис. 3.8. Окно настройки отношения между таблицами
В разделе «Таблица внешнего ключа» (справа) требуемая таблица задается автоматически и соответствует редактируемой в данный момент таблице (таблица «Деталь»). Следует лишь выбрать из выпадающего списка поле таблицы, содержащее ссылку (поле «Код материала» таблицы «Деталь»).
По завершении настройки связи между таблицами следует закрыть окна «Таблицы и столбцы» и «Отношения внешнего ключа» и обязательно сохранить произведенные изменения в таблице «Деталь» (кнопка с дискетой на панели инструментов).
Создание диаграммы базы данных
Среда ManagementStudioпредоставляет возможность быстрого построения диаграммы созданной базы данных (рис. 3.9).
Рис. 3.9. Диаграмма базы данных в ManagementStudio
Для этого в «Обозревателе объектов» в ветке соответствующей базы данных следует выбрать пункт «Диаграммы баз данных», а в контекстном меню этого пункта – раздел «Создать диаграмму базы данных». В открывшемся окне следует нажать кнопку «Добавить» для тех таблиц, которые должны отобразиться на диаграмме.
На основе построенной диаграммы можно производить изменения в структуре самой БД – добавлять и удалять таблицы, поля таблиц, создавать индексы, ключи, связи.
Сохранять построенную диаграмму не требуется, она всегда формируется в соответствии с текущей структурой базы.
Задание: создайте базу данных в соответствии с описанием предметной области из вашего варианта задания. Для этого удобно воспользоваться уже имеющейся физической моделью базы данных.
Ограничения целостности базы данных
СУБД MSSQLServerподдерживает три вида ограничений целостности базы данных: значения по умолчанию, проверки вводимых данных и ограничения ссылочной целостности.
Значения по умолчанию DEFAULT
Полю таблицы можно присвоить значение по умолчанию. Это значение будет использоваться всякий раз при добавлении новой строки, не содержащей данных в столбце, к которому относится ограничение DEFAULT; в случае модификации ранее созданной строки ограничениеDEFAULTигнорируется.
Для установки значения по умолчанию для полей некоторого столбца таблицы заполняется свойство «Значение или привязка по умолчанию» в свойствах этого столбца (рис. 3.6).
В качестве значения по умолчанию может выступать текстовая или строковая константа либо системная функция SQLServer(например, GETDATE () – текущая дата, USER() – текущий пользователь и т. п.).
Проверки CHECK
Ограничения CHECK задают условия проверки значений одного или нескольких полей таблицы (включая проверку сочетаний значений полей таблицы); при этом значения берутся из одной и той же вставляемой или обновляемой строки.
Создание новой проверки осуществляется по команде «Проверочные ограничения» контекстного меню редактора структуры таблицы. В открывшемся окне следует создать новое ограничение, воспользовавшись кнопкой «Добавить», и записать условие проверки в строке «Выражение» (рис. 3.10).
Рис. 3.10. Окно создания проверочных ограничений CHECK
Ограничения ссылочной целостности: правила удаления
По умолчанию при попытке удалить / изменить значение поля, на которое имеются ссылки из других (зависимых) таблиц, сервер не позволяет произвести соответствующие изменения и выдает сообщение об ошибке внешнего ключа.
Подобное поведение можно изменить, выбрав один из трех доступных вариантов действий для зависимых таблиц:
каскадное удаление/обновление;
установка пустого (NULL) значения;
установка значения по умолчанию.
Настройка осуществляется в окне «Отношения внешнего ключа» (рис. 3.7) зависимой таблицы, в разделе «Спецификация INSERTиUPDATE», правило изменения / удаления.