Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие 2013.doc
Скачиваний:
68
Добавлен:
07.03.2015
Размер:
3.81 Mб
Скачать
    1. Создание связей

Связи между таблицами в MSSQLServerзадаются в виде ссылок, т.е. внешних ключейFOREIGNKEY.

Рассмотрим установление связи в среде ManagementStudioмежду таблицами «Деталь» и «Материал». Для этого необходимо открыть окно редактирования структуры таблицы «Деталь», с помощью пункта «Проект» контекстного меню этой таблицы.

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

Для добавления нового внешнего ключа следует нажать кнопку «Добавить» в нижнем правом углу окна. Далее в появившемся шаблоне настройки внешнего ключа (рис. 3.7) необходимо выделить строку «Спецификация таблиц и столбцов» и нажать на кнопку с многоточием в этой строке справа.

На экране появится окно настройки связи между таблицами (рис. 3.8). Здесь в разделе «Имя отношения» можно задать название создаваемой связи или же оставить название по умолчанию.

Рис. 3.7. Окно добавления / удаления отношений между таблицами

В разделе «Таблица первичного ключа» (слева) из выпадающего списка следует выбрать соответствующую таблицу (в нашем примере – таблицу «Материал»), а в строке / строках ниже указать первичный ключ этой таблицы (поле «Код материала»).

Рис. 3.8. Окно настройки отношения между таблицами

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

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

    1. Создание диаграммы базы данных

Среда ManagementStudioпредоставляет возможность быстрого построения диаграммы созданной базы данных (рис. 3.9).

Рис. 3.9. Диаграмма базы данных в ManagementStudio

Для этого в «Обозревателе объектов» в ветке соответствующей базы данных следует выбрать пункт «Диаграммы баз данных», а в контекстном меню этого пункта – раздел «Создать диаграмму базы данных». В открывшемся окне следует нажать кнопку «Добавить» для тех таблиц, которые должны отобразиться на диаграмме.

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

Сохранять построенную диаграмму не требуется, она всегда формируется в соответствии с текущей структурой базы.

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

    1. Ограничения целостности базы данных

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

Значения по умолчанию DEFAULT

Полю таблицы можно присвоить значение по умолчанию. Это значение будет использоваться всякий раз при добавлении новой строки, не содержащей данных в столбце, к которому относится ограничение DEFAULT; в случае модификации ранее созданной строки ограничениеDEFAULTигнорируется.

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

В качестве значения по умолчанию может выступать текстовая или строковая константа либо системная функция SQLServer(например, GETDATE () – текущая дата, USER() – текущий пользователь и т. п.).

Проверки CHECK

Ограничения CHECK задают условия проверки значений одного или нескольких полей таблицы (включая проверку сочетаний значений полей таблицы); при этом значения берутся из одной и той же вставляемой или обновляемой строки.

Создание новой проверки осуществляется по команде «Проверочные ограничения» контекстного меню редактора структуры таблицы. В открывшемся окне следует создать новое ограничение, воспользовавшись кнопкой «Добавить», и записать условие проверки в строке «Выражение» (рис. 3.10).

Рис. 3.10. Окно создания проверочных ограничений CHECK

Ограничения ссылочной целостности: правила удаления

По умолчанию при попытке удалить / изменить значение поля, на которое имеются ссылки из других (зависимых) таблиц, сервер не позволяет произвести соответствующие изменения и выдает сообщение об ошибке внешнего ключа.

Подобное поведение можно изменить, выбрав один из трех доступных вариантов действий для зависимых таблиц:

  • каскадное удаление/обновление;

  • установка пустого (NULL) значения;

  • установка значения по умолчанию.

Настройка осуществляется в окне «Отношения внешнего ключа» (рис. 3.7) зависимой таблицы, в разделе «Спецификация INSERTиUPDATE», правило изменения / удаления.