Requires (クエリ・キーワード)
ユーザまたはプロセスがこのクエリを呼び出すために必要な特権のリストを指定します。
使用法
このクエリの使用を、指定した特権を持つユーザまたはプロセスに限定することを指定するには、以下の構文を使用します。
Query name(formal_spec) As classname [ Requires = privilegelist ] { //implementation }
privilegelist は、単一の特権、または引用符で囲んだ複数の特権のコンマ区切りリストのいずれかにします。各特権は、resource:permission の形式をとります。permission は、Use、Read、または Write (あるいは 1 文字の省略形 U、R、または W) です。以下に例を示します。
Requires="%DB_USER:R"
Requires="%DB_USER:READ"
1 つのリソースに複数の許可を指定するには、許可を任意の順序で連結 (どの形式でも可) します。以下に例を示します。
Requires="%DB_USER:RW"
Requires="%DB_USER:RWRITE"
Requires="%DB_USER:WR"
Requires="%DB_USER:WRITEREAD"
詳細
クエリを呼び出すには、ユーザまたはプロセスは、特権のリストにあるすべての特権を持っている必要があります。指定された特権がない場合にこのクエリを呼び出すと、<PROTECT> エラーが発生します。
クエリがスーパークラスから Requires キーワードを継承する場合、キーワードに新しい値を設定して、必要な特権のリストに追加できます。必要な特権をこのように削除することはできません。
既定値
このキーワードを省略すると、このクエリの呼び出しに特別な特権は不要になります。