- NO SPLオプションが指定されているALTER PROCEDUREリクエストによってプロシージャが再コンパイルされる場合、プロシージャのソース テキストがシステムから削除され、そのプロシージャを再び再コンパイルすることはできなくなります。
- プロシージャの変更は、そのプロシージャがもともと作成されたのと同じセッション モードで行なえます。ANSIセッション モードで作成されたプロシージャはTeradataセッション モードでは再コンパイルできず、またその逆も行なえません。
- ALTER PROCEDUREリクエストは、プロシージャ本体の内側では指定できません。
- ALTER PROCEDUREリクエストでコンパイル時オプションを何も指定しない場合、前にそのプロシージャを作成、置換、または再コンパイルした時のオプションが適用されます。いくつかのコンパイル時オプションをALTER PROCEDUREリクエストで指定すると、指定していないオプションのデフォルトは、プロシージャの既存のオプションになります。
- ANSIモード トランザクションで実行したALTER PROCEDUREリクエストの後にCOMMITを実行して、すべてのDDL文が有効になるようにする必要があります。
- Teradataセッション モードでは、ALTER PROCEDUREをトランザクションの最後のリクエストにしなければなりません。
- SQLプロシージャ内のDML、DDL、およびDCL文以外のすべての文が、ALTER PROCEDUREリクエストの実行中に、構文的および意味的に評価されます。 プロシージャ本体内のDML文、DDL文、およびDCL文の評価には構文の評価と名前解決が含まれ、以下は含まれない。
- アクセス権限の検査
- データ型の互換性
- ALTER PROCEDUREリクエストの実行が失敗した場合、プロシージャの既存のSQL作成テキストは保持されます。
- プロシージャの再コンパイル中に生じたエラーまたは警告は、SUCCESSまたはOK応答の一部として報告されます。パーセル内のアクティビティ カウントは、エラーおよび警告の合計数に設定されます。