Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Microsoft SQL Server 2008 исправленная1.doc
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
8.11 Mб
Скачать

Создание пользовательских типов данных

SQL Server позволяет пользователям определять собственные типы данных, которые являются комбинацией системных типов данных. Как правило, они базируются на системном типе данных определенной длины (имеются в виду числовые и символьные значения), для которого назначаются правила и значения по умолчанию. Например, можно определить тип данных «Почтовый индекс» как char(10), а тип данных «Телефонный номер» как char(14). Тогда тип данных «Почтовый индекс» будет гарантировать целостность форматов почтовых индексов во всех столбцах, для любого клиента, поставщика, служащего или контактного лица где угодно по всему миру.

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

1. CREATE RULE [название правила]

2. AS

3. [Условие на значение]

Условие на значение может принимать следующие возможные варианты:

• @value LIKE ‘’ – значение должно быть вида как между ‘’, например при %506 последние 3 символа должны быть 506 или (0-9)[0-9] – либо 1 символ от 0 до 9 либо 2 символа от 0 до 9.

• @list IN (‘’, ‘’) – перечень возможных значений, возможны значения только те, что в кавычках.

• @range <оператор> <число> – значение должно удовлетворять неравенству. <Оператор> - больше, меньше, больше или равно и т.д.

Например, тип данных «YEAR», созданный на основе типа smallint и с правилом «@range>= 1900 AND @range <= 2020», позволит вводить в поле числа диапазоном от 1900 до 2020.

Создание ограничений

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

  • Выражение - собственно ограничение.

  • Имя - название ограничения.

  • Описание – комментарии для ограничения.

  • Проверка существующей информации на соответствие ограничению.

  • Применять для вставки или обновления данных.

  • Создание репликации для ограничения.

Например, ограничение для столбца «оценка» в таблице «успеваемость студентов»:

Значения в столбце оценка могут быть только 3,4,5 или зачет. При прочих значениях, SQL Server не будет сохранять значение и будет выдавать ошибку.

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

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

Далее появляется следующее окно:

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

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

  • Базовая таблица внешнего ключа - показывает, какая таблица содержит столбец, действующий как внешний ключ в выбранной связи.

  • Столбцы внешних ключей - показывает, какой столбец действует как внешний ключ в выбранной связи.

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

  • Столбцы первичного или уникального ключа - показывает, какой столбец действует как первичный (или уникальный) ключ в выбранной связи.

Категория идентификаторов - разверните, чтобы увидеть поля свойств Имя и Описание.

  • Имя - показывает имя связи. Если создается новая связь, ей присваивается имя по умолчанию в зависимости от таблицы, отображаемой в активном окне в Конструкторе таблиц. Это имя всегда можно изменить.

  • Описание - описывает связь. Чтобы ввести более подробное описание, щелкните Описание и нажмите кнопку с многоточием справа от поля свойства. При этом появится большее поле для записи текста.

Категория конструктора таблиц - разверните, чтобы увидеть данные для категорий «Проверка существующих данных при создании и возобновлении» и «включить использование для репликации».

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

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

Категория спецификаций INSERT и UPDATE - разверните, чтобы увидеть сведения о «Правиле удаления» и «Правиле обновления связи».

  • Правило удаления - укажите, что произойдет при попытке пользователя удалить строку с данными, участвующую в связи внешнего ключа:

  • Нет действий. Сообщение об ошибке информирует пользователя, что удаление недопустимо, и удаление не происходит.

  • Каскад. Удаляет все строки, содержащие данные, участвующие в связи внешнего ключа. Не следует использовать параметр, если таблица будет включена в публикацию слиянием, в которой используются логические записи.

  • Присвоить NULL. Задает значение, равное NULL, если все столбцы внешних ключей в таблице могут содержать значения NULL.

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

  • Правило обновления - укажите, что произойдет при попытке пользователя обновить строку с данными, участвующую в связи внешнего ключа.

  • Нет действий. Сообщение об ошибке информирует пользователя, что обновление недопустимо, и обновление не выполняется.

  • Каскад. Обновляет все строки, содержащие данные, участвующие в связи внешнего ключа.

  • Присвоить NULL. Задает значение, равное NULL, если все столбцы внешних ключей в таблице могут содержать значения NULL.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]