SA_POLICY_ADMIN.APPLY_TABLE_POLICYは、指定されたポリシーをテーブルに追加するために使用されます。
ポリシータグ列が存在しない場合は、それをテーブルに追加し、NULLに設定します。ポリシーを適用すると自動的に有効になります。テーブルオプション、タグ機能、または述語を変更するには、まずそのポリシーを削除してから再適用する必要があります。
適用対象
この内容はOceanBaseデータベースEnterprise Editionにのみ適用されます。OceanBaseデータベースCommunity EditionはMySQLモードのみを提供します。
構文
SA_POLICY_ADMIN.APPLY_TABLE_POLICY (
policy_name IN VARCHAR,
schema_name IN VARCHAR,
table_name IN VARCHAR,
table_options IN VARCHAR := NULL,
label_function IN VARCHAR := NULL,
predicate IN VARCHAR := NULL);
パラメータの説明
| パラメータ | 説明 |
|---|---|
| policy_name | ポリシーを指定します。既存のポリシーを照会するには、ALL_SA_POLICIES データデータ・ディクショナリ・ビューの POLICY_NAME 列を照会してください。 |
| schema_name | ポリシーで保護されるテーブルが存在するスキーマ。 |
| table_name | ポリシーで保護されるテーブル。 |
| table_options | このテーブルで使用されるポリシー実行オプションのリスト(カンマで区切ります)。 |
| label_function | ラベル値を返すために文字列呼び出し関数を使用します。これはデフォルト値として使用されます。 |
| predicate | ラベルに基づく述語と組み合わせて使用する追加述語(AND または OR を使用)です。 |
例
次のステートメントは、shield_agent_policyポリシーをSchema FURY内のMISSION_LISTテーブルに適用します。
BEGIN
SA_POLICY_ADMIN.APPLY_TABLE_POLICY(
policy_name => 'shield_agent_policy',
schema_name => 'FURY',
table_name => 'MISSION_LIST');
END;
/