89 DBMS_IMMUTABLE_TABLE
不変表は、不正な変更からデータを保護するread-only表です。また、人為的エラーによって発生する可能性のある偶発的なデータ変更も防止します。DBMS_IMMUTABLE_TABLE
パッケージを使用すると、不変表内の期限切れの行を削除できます。
この章のトピックは、次のとおりです:
89.1 DBMS_IMMUTABLE_TABLEの概要
不変表は、不正な変更からデータを保護するread-only
表です。また、不変表は人為的エラーによって発生する可能性のある偶発的なデータ変更も防止します。不変表および不変表内の行に対して保存期間を指定する必要があります。不変表に行が含まれていない場合、または表に指定された保存期間を経過している場合は、不変表を削除できます。不変表から行を削除できるのは、表内の行に指定された保存期間を経過した後のみです。保存期間の延長を除き、不変表の定義は変更できません。
89.2 DBMS_IMMUTABLE_TABLEのセキュリティ・モデル
DBMS_IMMUTABLE_TABLE
パッケージは、SYS
によって所有され、データベース・インストールの一環としてインストールされます。このパッケージ内のルーチンは、実行者権限を使用して実行されるため、現行のユーザーの権限を使用して実行されます。
89.3 DBMS_IMMUTABLE_TABLEサブプログラムの要約
この表は、DBMS_IMMUTABLE_TABLE
サブプログラムをアルファベット順に示し、簡単に説明しています。
表89-1 DBMS_IMMUTABLE_TABLEパッケージのサブプログラム
サブプログラム | 説明 |
---|---|
DELETE_EXPIRED_ROWSプロシージャ | このプロシージャは、期限切れの行を削除します。 |
89.3.1 DELETE_EXPIRED_ROWSプロシージャ
このプロシージャは、期限切れの行の一部または全部を不変表から削除します。このプロシージャはコミットしません。
構文
DBMS_IMMUTABLE_TABLE.DELETE_EXPIRED_ROWS( schema_name IN VARCHAR2, table_name IN VARCHAR2, before_timestamp IN TIMESTAMP WITH TIME ZONE DEFAULT NULL, number_of_rows_deleted OUT NUMBER);
パラメータ
表89-2 DELETE_EXPIRED_ROWSプロシージャのパラメータ
パラメータ | 説明 |
---|---|
schema_name |
スキーマの名前。 |
table_name |
不変表の名前。 |
before_timestamp |
パラメータが デフォルト値は |
number_of_rows_deleted |
削除する行数。 |