ALTER POLICY — 更改一条行级安全性策略的定义
ALTER POLICYnameONtable_nameRENAME TOnew_nameALTER POLICYnameONtable_name[ TO {role_name| PUBLIC | CURRENT_ROLE | CURRENT_USER | SESSION_USER } [, ...] ] [ USING (using_expression) ] [ WITH CHECK (check_expression) ]
ALTER POLICY更改一条现有行级安全性策略的定义。 请注意,ALTER POLICY只允许修改策略适用的角色集合, 以及USING和WITH CHECK表达式。 若要更改策略的其他属性,例如它所适用的命令,或者它是宽容性还是限制性策略, 则必须删除该策略并重新创建。
要使用ALTER POLICY,你必须拥有该策略所适用的表。
在ALTER POLICY的第二种形式中,角色列表、 using_expression和 check_expression在被指定时会分别独立替换。 省略这些子句中的任意一个时,策略中对应的部分保持不变。
name #要更改的现有策略名称。
table_name #该策略所在表的名称(可选模式限定)。
new_name #该策略的新名称。
role_name #该策略适用的角色。可以一次指定多个角色。要将该策略应用于所有角色, 可使用PUBLIC。
using_expression #该策略的USING表达式。详见 CREATE POLICY。
check_expression #该策略的WITH CHECK表达式。详见 CREATE POLICY。
ALTER POLICY是PostgreSQL扩展。
如果您发现文档中有不正确的内容、与您使用特定功能的经验不符或需要进一步说明,请使用此表单来报告文档问题。