UDTTYPE権限は、UDTUSAGEに関連付けられているすべての権限をユーザーに付与するとともに、新しいメソッドを作成したり既存のメソッドを削除または置換したりせずに、UDTを参照するすべてのSQL文を実行することを許可します。
UDTTYPE権限を持つユーザーは、次の文と操作を実行できます。
- CREATE TYPE (メソッド シグネチャの指定なし)
- DROP TYPE
- ALTER TYPE (メソッド シグネチャの追加または削除なし)
- CREATE ORDERINGおよびDROP ORDERING
- CREATE CASTおよびDROP CAST
- CREATE TRANSFORMおよびDROP TRANSFORM
- CREATE TABLE (UDT列を含むテーブル)
- SQLリクエスト、UDF、またはプロシージャ内で特定のUDTを参照する。
- すべてのメソッドを実行する
ON句に指定するdatabase_nameはSYSUDTLIBにする必要があります。
UDTTYPEは自動的に付与される権限ではありません。ユーザーはこの権限を、付与されるか、またはロールによって取得する必要があります。UDTTYPEをWITH GRANT OPTION付きで付与されたユーザーは、他のユーザーにUDTUSAGEまたはUDTTYPE権限を付与することができ、任意にWITH GRANT OPTION付きで付与することもできます。
UDTTYPEは、DBC.AccessRightsテーブルのAccessRight列に、コードUTで表わされます。
次のGRANTリクエストは、データベースSYSUDTLIBに対するUDTTYPE権限をユーザーtester2に付与します。
GRANT UDTTYPE ON SYSUDTLIB TO tester2;