русс | укр

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

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

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

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


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

INSERT PHX_Customers


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


VALUES ('Timothy', 'Calunod', '423 Third', 'CA', '95023', ' 9252221212')

Итак, мы создали представление, не позволяющее вставлять новые записи, поскольку в него не включено поле city, которое должно заполняться в таблице Customers. В следующей последовательности действий мы создадим триггер INSTEAD OF, который будет вставлять отсутствующее значение при выполнении вставки через представление.

Рис. 11. Попытка вставки клиента без указания города привела к ошибке

1. В окне Object Explorer раскройте папку Views=> PHX_Customers для базы данных Sales, щелкните правой кнопкой на папке Triggers и выберите команду New Trigger.

2. В строке CREATE TRIGGER введите имя триггера (Add_City), в строке ON введите имя представления (dbo. PHX_Customers).

3. Строку AFTER замените на INSTEAD OF INSERT.

4. В поле (--Insert statements for trigger here) введите следующий код триггера

DECLARE

@FNAME VARCHAR(20),

@LNAME VARCHAR(20),

@ADDR VARCHAR(50),

@CITY VARCHAR(20),

@STATE STATE,

@ZIP Char(5),

@PHONE CHAR(10)

SET @CITY = 'Phoenix'

SET @FNAME = (SELECT FNAME FROM INSERTED)

SET @LNAME = (SELECT LNAME FROM INSERTED )

SET @ADDR = (SELECT ADDRESS FROM INSERTED)

SET @STATE = (SELECT STATE FROM INSERTED)

SET @ZIP = (SELECT ZIP FROM INSERTED)

SET @PHONE = (SELECT PHONE FROM INSERTED)

INSERT CUSTOMERS

VALUES (@FNAME, @LNAME, @ADDR, @CITY, @STATE, @ZIP, @PHONE)

6. Для создания нового триггера щелкните на кнопке Execute (рис. 12).

7. Для тестирования триггера вновь введите и выполните код:

USE Sales

INSERT PHX_Customers

VALUES ('Timothy', 'Calunod', '123 Third1', 'CA', '94023', '9252221212')

8. Чтобы удостовериться во вставке данных в таблицу Customers с заполнением столбца city, выберите в меню Query=>New Query и выполните следующий

Рис. 12. Создание триггера INSTEAD OF для вставки отсутствующего значения.



запрос (рис. 13).

USE Sales

SELECT * FROM Customers

Рис. 13. С использованием триггера замены вставка клиента была выполнена успешно

9. Закройте окно запросов.

В первой последовательности действий мы создали представление, не отображающее столбец city. Затем мы попытались вставить с помощью представление PHX_Customers новую запись, что нам не удалось, поскольку мы не можем вставлять требуемое значение city в этом представлении. Далее мы создали триггер, который считывает из таблицы inserted все значения, требуемые для вставки, и сохраняет их в переменных памяти, а также создает переменную памяти для хранения отсут­ствующего значения city. После заполнения переменных памяти мы вставили за­пись в таблицу Customers, используя значения, хранящиеся в созданных нами пере­менных.



<== предыдущая лекция | следующая лекция ==>
Триггеры INSTEAD OF | Триггеры DDL


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


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

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

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


 


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

 
 

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

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