русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Расширенные технологии.


Дата добавления: 2015-08-14; просмотров: 542; Нарушение авторских прав


Данные технологии позволяют использовать триггеры INSERT,UPDATE, DELETEвместе, что повышает производительность БД.

 

пример: допустим, у нас есть таблица «Sotrydnik» БД “Ludi”. Необходимо создать триггер, который будет запрещать вставлять данные о сотруднике с окладом менее 20000 рублей и запрещать удалять записи о сотрудниках, оклад которых превышает 50000 рублей.

 

1. Открыть SQL Server Management Studio. В окне Object ExplorerразвернутьпапкуБД «Ludi” - Programmability – Triggers.

2. Щелкаем правой кнопкой мыши на папке Triggersи выбираем командуNewTriggers.

3. В нашем случае триггер будет выглядеть следующим образом:

 

CREATE TRIGGER primer5

ON sotrydnik

AFTER INSERT,DELETE

AS

BEGIN

SET NOCOUNT ON;

begin

if (select oklad from inserted)<'20000'

rollback

print'Нельзя вставлять запись о сотруднике, с окладом менее 20 000 рублей’

end

begin

if (select oklad from deleted)>='50000'

print'Нельзя удалять запись о сотрудике, оклад которого более 50000'

rollback

END

END

GO

4. Выполняем триггер, нажав на кнопку , на панели инструментов. В результате в нижней части экрана мы увидим строчку «Command(s)completedsuccessfully».

5. Далее сохраняем триггер, щелкнув по кнопке Save

6. Чтобы протестировать новый триггер, необходимо создать запрос, нажав на кнопку New Query , следующего содержания

 

USE LUDI

DELETE SOTRYDNIK

WHERE OKLAD=’55000’

 

Выполняем запрос, щелкнув по кнопке , в нижней части окна увидим сообщение об ошибке:

Нельзя удалять запись о сотруднике, с окладом более 50000’

 

 

Создадим запрос, нажав на кнопку New Query , следующего содержания

 

USE LUDI

INSERT SOTRYDNIK

VALUES (‘S28’,’Петров’,’Валерий’,’Михайлович’,’10000’,’2’,’1’)

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



 

Т.е. получается, что вы можете комбинировать триггеры, имеет смысл использовать один объединенный, вместо двух отдельных.

 



<== предыдущая лекция | следующая лекция ==>
Триггеры INSTEAD OF | Формирование сообщений об ошибках. Функция RAISERROR().


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 1.935 сек.