変更の始まり

-20474   PERMISSION OR MASK CANNOT BE CREATED FOR THE object-name OBJECT OF THE object-type TYPE. REASON CODE reason-code.

説明

CREATE PERMISSION ステートメントまたは CREATE MASK ステートメントを処理できません。

object-name
オブジェクトの名前。
object-type
オブジェクトのタイプ。
reason-code
以下のいずれかの値で示される、メッセージまたは SQL コードの理由。
1
定義で、行の許可または列マスクが定義される表が参照されています。
2
定義で表関数またはコレクション派生表 (UNNEST) が参照されています。
3
定義で、安全でないユーザー定義関数が参照されています。
4
定義で、以下のいずれかの関数が参照されています。
  • 非 deterministic として定義されている関数
  • 外部アクションを持つように定義されている関数
  • MODIFIES SQL DATA オプションで定義した関数
5
定義で OLAP 指定が参照されています。
6
定義で XMLEXISTS 述部が参照されています。
7
定義で ROW CHANGE 式が参照されています。
8
定義でシーケンス参照が参照されています。
9
定義で作成済み一時表または宣言済み一時表が参照されています。
10
定義で、XML 列用に暗黙に作成された表が参照されています。
11
定義で、SELECT 文節の * または name.* が参照されています。
12
定義で、FIELDPROC を使用して定義されている列が参照されています。
13
定義で、複数のコード化スキーム処理を必要とする言語エレメントが参照されています。
14
定義で、ダッシュ (-) を含む通常の SQL ID が参照されています。
16
行の許可または列マスクの本体に、期間指定が含まれています。
17
次の状況の 1 つが発生しました。
  • 以下のいずれかの表タイプに対する行の許可または列マスクの作成が試みられました。
    • 期間を使用して定義されている表
    • 履歴表
    • アーカイブ使用可能表
    • アーカイブ表
    • アクセラレーター専用表
    これらの表のタイプに対して行の許可または列マスクを作成することはできません。
  • ACTIVATE ROW ACCESS CONTROL 仕様に関するデフォルトの行の許可を暗黙的に作成することが試みられました。
18
定義で EBCDIC 表の Db2® 11 Unicode 列が参照されています。
19
EBCDIC 表の Db2 11 Unicode 列には列マスクを定義できません。
32
マスクが定義されている列で、マスクの定義にフィールド・プロシージャー (FIELDPROC) が使用されています。
33
戻り式のデータ・タイプが、列マスクが定義されている列のデータ・タイプと異なります。
34
戻り式の長さ属性が、列マスクが定義されている列の長さ属性と異なります。
35
戻り式の NULL 属性が、列マスクが定義されている列の NULL 属性と異なります。
36
戻り式のサブタイプ、コード化スキーム、または CCSID が、列マスクが定義されている列の対応する属性と異なります。
37
戻り式の属性が、列マスクが定義されている列の対応する属性と異なります。この属性が、理由コード 33 から 36 で説明されている属性のいずれかではありません。
39
定義がアクセラレーター専用表を参照しています。
51
セキュリティー・ラベル列を含む表に対して行の許可を作成することはできません。
52
行の許可は、セキュリティー・ラベル列を含む表を参照することはできません。
53
GROUPING SETS または super-groups は、列マスクまたは行の許可の制御の定義では指定できません。

システムの処置

このステートメントを処理することはできません。

プログラマーの応答

構文を修正して、ステートメントを再発行してください。

SQLSTATE

428HB

変更の終わり