27_SH43-0144-00 (1038594), страница 33

Файл №1038594 27_SH43-0144-00 (КП - Библиотека) 33 страница27_SH43-0144-00 (1038594) страница 332017-12-26СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 33)

Например, перед принятием заказа илиобновлением сводной таблицы данных триггер может проверять, не превышенли предел кредита для данного покупателя.Преимущества использования триггеров:v Ускорение разработки прикладных программ: Поскольку триггер хранится вбазе данных, не требуется кодировать его действие в каждой прикладнойпрограмме.v Упрощение обслуживания: После того, как триггер определен, онавтоматически вызывается при обращениях к таблице, для которой он создан.v Глобальное задание логических правил: При изменении логических правилнужно изменить только триггер, а не все прикладные программы.Чтобы создать триггер с помощью Центра управления:|1.

Раскройте дерево объектов и найдите папку Триггеры.2. Щелкните правой кнопкой мыши по папке Триггеры и выберите из всплывающегоменю пункт Создать.3. Задайте информацию об этом триггере.4. Задайте действие, вызываемое этим триггером, и нажмите кнопку OK.Чтобы создать триггер из командной строки, введите команду:|||||CREATE TRIGGER <имя><действие> ON <имя_таблицы><операция><действие_триггера>Следующий оператор SQL создает триггер, увеличивающий общее числосотрудников при приеме на работу нового человека, для чего он при каждомдобавлении строки в таблицу EMPLOYEE прибавляет 1 к значению числасотрудников в столбце NBEMP таблицы COMPANY_STATS.140Руководство администратора: РеализацияCREATE TRIGGER NEW_HIREDAFTER INSERT ON EMPLOYEEFOR EACH ROW MODE DB2SQLUPDATE COMPANY_STATS SET NBEMP = NBEMP+1;|Тело триггера может содержать один или несколько операторов SQLследующих типов: INSERT, UPDATE с поиском, DELETE с поиском, полнаявыборка, SET, задающий значение временных переменных, и SIGNALSQLSTATE.

Триггер может активироваться до (BEFORE) или после (AFTER)выполнения оператора INSERT, UPDATE или DELETE, для которого онопределен. Полную информацию о синтаксисе оператора CREATE TRIGGERсмотрите в руководстве SQL Reference. Информацию о создании ииспользовании триггеров смотрите в руководстве Application Development Guide.||||Примечание: Для триггера типа BEFORE в действии триггера нельзя задаватьимя генерируемого столбца, если только это не столбецидентификации. Это значит, что в триггере BEFORE можноиспользовать значение генерируемого столбца идентификации.|Зависимости триггераВсе зависимости триггера от других объектов записываются в каталогеSYSCAT.TRIGDEP. Триггер может зависеть от многих объектов.

Эти объекты изависимые от них триггеры подробно описаны в главе об операторе DROPруководства SQL Reference.Если один из этих объектов отброшен, триггер становится неработоспособным,но его определение сохраняется в каталоге. Чтобы восстановитьработоспособность этого триггера, необходимо получить из каталога егоописание и ввести новый оператор CREATE TRIGGER.Если триггер отброшен, его описание удаляется из производной таблицыкаталога SYSCAT.TRIGGERS и все его зависимости удаляются из производнойтаблицы каталога SYSCAT.TRIGDEP.

Все пакеты, имеющие зависимостиоператоров UPDATE, INSERT или DELETE от этого триггера, становятсянедействительными.Если зависимый объект - это производная таблица, и она сталанеработоспособной, триггер также отмечается как неработоспособный. Всепакеты, зависящие от триггера, отмеченного как неработоспособный, становятсянедействительными. (Дополнительную информацию смотрите в разделе“Зависимости операторов при изменении объектов” на стр. 221.)Глава 3. Создание базы данных141| Создание пользовательской функции или метода||||||||Пользовательские функции расширяют возможности, предоставляемыевстроенными функциями SQL, и их можно использовать везде, где могутиспользоваться встроенные функции. Пользовательскую функцию можносоздать как:v Внешнюю функцию, которая написана на одном из языковпрограммированияv Функцию с источником, реализация которой наследуется от какой-либодругой существующей функции|Существует три типа пользовательских функций:СкалярнаяПри каждом вызове возвращает одно значение.

Пример скалярнойфункции - встроенная функция SUBSTR(). Скалярные пользовательскиефункции могут быть внешними функциями или функциями систочником.Функция столбцаВозвращает одно значение для набора однородных значений (столбца).В DB2 иногда также называется сводной функцией. Пример функциистолбца - встроенная функция AVG(). В DB2 нельзя определитьвнешнюю пользовательскую функцию столбца, но ее можно определитьна основе одной из встроенных функций столбца. Это удобно дляпользовательских типов.Например, если имеется пользовательский тип SHOESIZE,определенный на основе типа INTEGER, можно определитьпользовательскую функцию столбца AVG(SHOESIZE), источникомкоторой будет встроенная функция AVG(INTEGER).ТабличнаяВозвращает вызвавшему ее оператору SQL таблицу. Табличныефункции можно вызывать только из условия FROM оператора SELECT.Такие функции позволяют применять возможности языка SQL кданным, не являющимся данными DB2, или преобразовывать такиеданные в таблицу DB2.Например, табличная функция может брать файл и преобразовывать егов таблицу, может вносить в таблицу примеры данных из WWW илиобращаться к базе данных Lotus Notes и возвращать информацию описьмах, например, дату, от кого получено письмо и текст сообщения.Эту информацию можно затем объединить с другими таблицами базыданных.Табличная функция может быть только внешней функцией.

Она неможет быть функцией с источником.142Руководство администратора: РеализацияИнформация о существующих пользовательских функций записывается впроизводные таблицы каталога SYSCAT.FUNCTIONS и SYSCAT.FUNCPARMS.Системный каталог не содержит выполняемого кода пользовательской функции.(Поэтому, создавая планы резервного копирования и восстановления, нужнопринять решения насчет выполняемых файлов пользовательских функций.)При компиляции операторов SQL важна статистическая информация опроизводительности пользовательских функций. Информацию о том, какобновлять статистики пользовательских функций в системном каталоге,смотрите в главе “Обновление статистики для пользовательских функций”смотрите в руководстве Руководство администратора: Производительность.Подробную информацию об использовании оператора CREATE FUNCTION длянаписания пользовательских функций для конкретной прикладной программысмотрите в руководстве Application Development Guide.

Подробную информациюо синтаксисе пользовательских функций смотрите в руководстве SQL Reference.Создание отображения функцииВ базе данных объединения для отображения локальной функции илилокального шаблона функции (описанного в разделе “Создание шаблонафункции” на стр. 144) на функцию на одном или нескольких источниках данныхнужно создать отображение функции.

Для многих функций источников данныхсуществуют отображения функций по умолчанию.Отображения функций удобны, когда:v На источнике данных становятся доступны новые встроенные функции.v Нужно отобразить пользовательскую функцию источника данных налокальную функцию.v Для прикладной программы требуется поведение, отличное от поведения поумолчанию, определяемого отображением по умолчанию.Отображения функций, определенные с помощью операторов CREATEFUNCTION MAPPING, хранятся в базе данных объединения.Функции (или шаблоны функций) должны иметь то же число входныхпараметров, что и функция источника данных. Кроме того, типы данныхвходных параметров на стороне объединения должны быть совместимы стипами данных входных параметров на стороне источника данных.Для создания отображения функции используется оператор CREATE FUNCTIONMAPPING. Например, для создания отображения функции между функциейOracle AVGNEW и эквивалентной ей функцией DB2 на сервере ORACLE1:CREATE FUNCTION MAPPING ORAVGNEW FOR SYSIBM.AVG(INT) SERVER ORACLE1OPTIONS (REMOTE_NAME 'AVGNEW')Глава 3.

Создание базы данных143Чтобы использовать этот оператор, необходимо обладать полномочиямиSYSADM или DBADM для базы данных объединения. Атрибуты отображенияфункции хранятся в SYSCAT.FUNCMAPPINGS.Сервер объединения не будет связывать входные переменные хоста или получатьрезультаты типов большой объект, LONG VARCHAR/VARGRAPHIC,DATALINK, пользовательских типов и структурированных типов. Нельзясоздать отображение функции, если входные параметры или возвращаемоезначение относятся к одному из этих типов.Дополнительную информацию об использовании и создании отображенийфункций смотрите в руководстве Application Development Guide. Подробноеописание синтаксиса оператора CREATE FUNCTION MAPPING смотрите вруководстве SQL Reference.Создание шаблона функцииВ системе объединения для “привязки” отображений функций используютсяшаблоны функций.

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

Характеристики

Тип файла
PDF-файл
Размер
3,14 Mb
Тип материала
Высшее учебное заведение

Список файлов курсовой работы

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6451
Авторов
на СтудИзбе
305
Средний доход
с одного платного файла
Обучение Подробнее