# 改变政策

ALTER POLICY — 更改行级安全策略的定义

# 概要

ALTER POLICY name ON table_name RENAME TO new_name

ALTER POLICY name ON table_name
    [ TO { role_name | PUBLIC | CURRENT_ROLE | CURRENT_USER | SESSION_USER } [, ...] ]
    [ USING ( using_expression ) ]
    [ WITH CHECK ( check_expression ) ]

# 描述

改变政策更改现有行级安全策略的定义。注意改变政策只允许应用策略的角色集和使用带支票要修改的表达式。要更改策略的其他属性,例如它应用的命令或者它是允许的还是限制的,必须删除并重新创建策略。

使用改变政策,您必须拥有该策略适用的表。

在第二种形式改变政策, 角色列表,using_expression, 和*check_expression*如果指定,则独立替换。当这些条款之一被省略时,政策的相应部分将保持不变。

# 参数

姓名

要更改的现有策略的名称。

表名

策略所在的表的名称(可选模式限定)。

新名字

策略的新名称。

角色名称

策略适用的角色。一次可以指定多个角色。要将策略应用于所有角色,请使用上市.

using_expression

使用政策的表达。看创建政策详情。

check_expression

带支票政策的表达。看创建政策详情。

# 兼容性

改变政策是一个 PostgreSQL 扩展。

# 也可以看看

创建政策,丢弃政策