外部セキュリティ句の前に指定するキーワード。
この句はオペレーティング システムI/O操作を実行する外部メソッドで必須です。
外部セキュリティ句を指定しないのに、定義されているメソッドがOS I/Oを実行する場合、そのI/Oの結果は予期不能です。最も考えられる結果はデータベースのクラッシュで、システム全体がクラッシュする場合もあります。
- DEFINER
- メソッドが、この目的で作成された関連するセキュリティ許可オブジェクトのクライアント ユーザー コンテキストで実行します。このオブジェクトはメソッド、SYSUDTLIBと同じデータベースに含まれています。
- 許可名を指定する場合は、関数を実行する前に、その名前で許可オブジェクトを定義する必要があります。
- 許可名を指定しない場合は、デフォルトのDEFINER許可オブジェクトを定義する必要があります。
- デフォルトの許可オブジェクトは、ユーザーが関数を実行する前に定義しておく必要があります。
- 指定された許可名がメソッドの作成時に存在しない場合は、許可名が存在しないことを示す警告が報告されます。
- CREATE AUTHORIZATIONおよびREPLACE AUTHORIZATIONを参照してください。
- authorization_name
- 任意指定の許可名を指定します。
- データベース オブジェクトの命名ルールについては、<Teradata Vantage™ SQL基礎、B035-1141>を参照してください。
- 指定した許可オブジェクトはあらかじめ定義しておく必要があります。定義されていない場合システムはエラーを報告します。詳細については、CREATE AUTHORIZATIONおよびREPLACE AUTHORIZATIONを参照してください。
- INVOKER
- メソッドは、この目的で存在するデフォルトの許可オブジェクトに関連したOSユーザー コンテキストで実行します。
- CREATE AUTHORIZATIONおよびREPLACE AUTHORIZATIONを参照してください。