SA_POLICY_ADMIN.REMOVE_TABLE_POLICY 用于从表中删除指定的策略。
策略谓词和所有 DML 触发器将从表中删除,并且可以选择要删除的策略标签列。可以从属于该策略保护的 schema 的表中删除策略。
语法
SA_POLICY_ADMIN.REMOVE_TABLE_POLICY (
policy_name IN VARCHAR,
schema_name IN VARCHAR,
table_name IN VARCHAR,
drop_column IN BOOLEAN := FALSE);
参数解释
参数 | 解释 |
---|---|
policy_name | 指定策略。要查找现有策略,请查询ALL_SA_POLICIES 数据字典视图的 |
schema_name | 与此策略相关联的表所在的 schema。要查找此 schema,请查询 ALL_SA_TABLE_POLICIES 视图的 |
table_name | 名称为 schema_name 的数据库中的表。要查找此表,请查询 ALL_SA_TABLE_POLICIES 视图的 |
drop_column | 是否删除该列。如果为 TRUE,则将从表中删除该策略的列;否则,将保留该策略的列。 |
示例
如下示例为从 schema FURY
中的 MISSION_LIST 表上删除 shield_agent_policy
策略:
BEGIN
SA_POLICY_ADMIN.REMOVE_TABLE_POLICY(
policy_name => 'shield_agent_policy',
schema_name => 'FURY',
table_name => 'MISSION_LIST',
drop_column => TRUE);
END;
/