Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Voprosy_k_ekzamenu (1).doc
Скачиваний:
6
Добавлен:
28.09.2019
Размер:
275.97 Кб
Скачать

Ограничение проверки

ALTER TABLE Customers

ADD CONSTRAINT CN_CustomerPhone

CHECK (Phone

LIKE ‘ ([0-9][0-9][0-9]) [0-9][0-9][0-9]-[0-9][0-9][0-9][0-9])’)

Нельзя применить к кома

Ограничения стандартных значений

Стандартные значения используются только в операторе INSERT – их нельзя применять к операторам UPDATE или DELETE.

Если в операторе INSERT присутствует значение для данного столбца, значения по умолчанию использоваться не будут.

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

CREATE TABLE Shippers (

ShipperID int NOT NULL PRIMARY KEY,

ShipperName varchar(25) NOT NULL,

Date smalldatetime NOT NULL DEFAULT GETDATE()

)

-- функция GETDATE() возвращает текущую дату и время.

-- Например, 24.06.2008 17:44:52

Объекты sql Server – правила и стандартные значения

  • Правила (rules) и стандартные значения (defaults) появились раньше ограничений проверки и ограничений стандартных значений.

  • Правила и стандартные значения не согласуются со стандартом ANSI (призванный гарантировать совместимость).

  • Ограничения представляют собой характеристики таблицы и не могут существовать сами по себе.

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

CREATE RULE SalaryRule AS @Salary > 0

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

Для активизации правила необходимо воспользоваться хранимой процедурой:

sp_bindrule <’правила’>, <’имя_объекта’>, [<’ использовать_в_будущем’>]

отменить привязку правила:

EXEC sp_unbindrule

‘Employees.Salary’

Удаление правила:

DROP RULE <имя_правила>

Сравнение средств поддержки целостности данных

Инструмент

Преимущества

Недостатки

Ограничения

=Быстрые.

=Выполняются до запуска оператора.

=Совместимы со стандартом ANSI/

=Необходимость переопределения для каждой таблицы.

=Невозможность задания ссылок на другие таблицы.

=Нельзя привязать к типам данных.

Правила, стандартные значения

=Представляет собой независимые объекты.

=Возможность повторного использования.

=Можно привязать к типам данных.

=Выполняется перед запуском оператора.

=Немного медленнее ограничений.

=Не могут ссылаться на другие таблицы.

=Реализованы в новых версиях SQL Server только для поддержки обратной совместимости.

Триггеры

=Предельная гибкость.

=Могут применяться для нескольких столбцов и нескольких таблиц.

=Запускаются только после/вместо выполнения команды.

=Приводят к существенному перерасходу ресурсов.

  1. Системы безопасности СУБД SQL Server 2000. Пользователи и права пользователей. DCL – команды GRANT, REVOKE, DENY. Понятие роли. Серверные роли и роли БД, определяемые пользователем роли.

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