頻繁に使用される文、または複雑な操作を実行する文のセットを定義します。マクロに定義された文は、以降のEXECUTE文でマクロを起動した場合に実行依頼されます。
REPLACE MACROは既存のマクロを再定義します。指定したマクロが存在しない場合、REPLACE MACROはその名前の新しいマクロを作成します。
CREATE MACROに必要な権限
マクロが作成されるデータベースまたはユーザーに対するCREATE MACRO権限が必要です。マクロの作成者には、そのマクロに対するWITH GRANT OPTION付きのDROP MACROおよびEXECUTE権限が自動的に与えられます。
マクロを作成するユーザーには、実行するすべての文に対する権限が必要です。
マクロが作成された後は、その直接の所有者は作成したユーザーではなく、マクロが存在するデータベースまたはユーザーになります。それを直接所有するデータベースまたはユーザーには、WITH GRANT OPTIONを含めマクロを実行するための適切な権限がすべて必要です。
マクロを介したデータへのアクセスは、その作成者の権限によってではなく、直接の所有者の権限によって制御されます。このことは、セキュリティ上の問題となることがあります。詳細については、Teradata Vantage™ - SQLデータ制御言語、B035-1149を参照してください。
マクロを実行するユーザーは、その実行によって影響を受けるテーブルを知る必要はありません。
REPLACE MACROに必要な権限
マクロを置換するには、その既存のマクロ、それを含むデータベース、またはユーザーに対するDROP MACRO権限が必要です。
マクロが存在しない場合には、そのマクロ、それを含むデータベース、またはユーザーに対するCREATE MACRO権限が必要です。
マクロを置換するユーザーには、実行するすべての文に対する権限が必要です。
マクロが置換された後は、その直接の所有者は置換したユーザーではなく、マクロが存在するデータベースになります。 それを直接所有するデータベースには、WITH GRANT OPTIONを含めマクロを実行するための適切な権限がすべて必要です。
自動的に与えられる権限
- DROP MACRO
- EXECUTE
- GRANT