Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

ALTER PROCEDURE

Описание

ALTER PROCEDURE изменяет существующую сохраненную процедуру. Эта инструкция может изменять входные параметры, выходные параметры и тело процедуры.

Заголовок и тело процедуры должны быть включены в инструкцию ALTER PROCEDURE полнонстью. Синтаксис точно такой же, как у инструкции CREATE PROCEDURE за исключением ключевого слова CREATE, которое заменено на ALTER.

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

Изменения созданные инструкцией ALTER PROCEDURE, дают эффект, как только они произведены. Изменения распространяются на все приложения, которые используют процедуру, без необходимости их перекомпиляции и сборки.

Предостережение: Будте внимательны при изменении типов и числа входных и выходных параметров процедуры, так как существующий код может предполагать, что процедура имеет оригинальный формат.

Процедура может быть изменена ее создателем или пользователем SYSDBA.

Синтаксис

ALTER PROCEDURE name
  [(param <datatype> [, param <datatype> ...])]
  [RETURNS (param <datatype> [, param <datatype> ...])]
  AS <procedure_body> [terminator]
Аргумент Описание
name Имя существующей процедуры.
param <datatype> Входные параметры, используемые процедурой. Допустимые типы данных перечисленны в Типы данных.
RETURNS param <datatype> Выходные параметры, используемые процедурой. Допустимые типы данных перечислены в Типы данных.
<datatype> Тело процедуры. Включает:
  • Объявления локальных переменных.
  • Блок инструкций на языке процедур и триггеров.
Смотри CREATE PROCEDURE, для полного описания.
terminator Терминатор, определенный для ISQL командой SET TERM, указывающий конец тела процедуры.

Примеры

Эта инструкция изменяет процедуру GET_EMP_PROJ, изменяя возвращаемый параметр, чтобы он имел тип данных VARCHAR(20):

SET TERM !! ;
ALTER PROCEDURE GET_EMP_PROJ (EMP_NO SMALLINT)
RETURNS (PROJ_ID VARCHAR(20)) AS
  BEGIN
    FOR SELECT PROJ_ID
    FROM EMPLOYEE_PROJECT
    WHERE EMP_NO = :emp_no
    INTO :proj_id
    DO
    SUSPEND;
  END !!

SET TERM ; !!

Смотри так же:

Оставить комментарий

Комментарий:
можно использовать BB-коды
Максимальная длина комментария - 4000 символов.
 
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог