Usage

ALTER PROCEDURE <schemaname>.<procedurename>( ... ) [ RETURNS ( ... ) ] [ OWNER <owner_name>] [EXECUTE AS <executor> ] AS BEGIN <procedure code> END

Syntax Rules

  • ALTERブロックはCREATE VIRTUAL PROCEDUREを含んではいけません;
  • VIRTUALCREATE VIRTUAL PROCEDUREのように使用しないでください;
  • ALTERブロックは、キャッシュされたプロシージャ用のキャッシュヒントを先頭に持つことができます;
  • パラメータと戻り値はALTER PROCEDUREコマンドで指定されたとおりに使用されるので、保持すべき場合は省略できません;
  • OWNEREXECUTE ASまたは が可能な値で、所有者または管理者のみが変更できます。CALLEROWNER

Example

ALTER PROCEDURE views.dateaxis() returns (xdate date) OWNER 'test_user' EXECUTE AS CALLER as
BEGIN
SELECT current_date;
END;;

権限管理、つまり、プロシージャ SYSADMIN.changeResourceOwnerAndExecutor()を使用することで、プロシージャの所有者と実行者を変更することができます。

OWNER and EXECUTE AS are available since v4.1

SYSADMIN.changeResourceOwnerAndExecutor procedure is available since v4.5