openGauss SQL语法 — ALTER PACKAGE

ALTER PACKAGE

功能描述

修改PACKAGE的属性或重编译PACKAGE。当PACKAGE因为依赖的引用对象发生改变而变为失效状态后,直接使用PACKAGE中失效的对象可能会导致错误的执行结果。如PACKAGE中定义存储过程的入参依赖自定义的类型或表字段,对自定义类型或表字段添加新属性后,调用原来的存储过程无法向新添加的属性传参,openGauss支持对这种场景下的PACKAGE进行重新编译,恢复其有效状态。

注意事项

  • 目前仅支持ALTER PACKAGE OWNER和ALTER PACKAGE COMPILE功能,系统管理员默认拥有该权限,有以下权限约束:
    • 当前用户必须是该PACKAGE的所有者或者系统管理员,且该用户是新所有者角色的成员。
  • 仅有初始化用户可以修改定义者权限的package的owner。

语法格式

  • 修改PACKAGE的所属者。

    ALTER PACKAGE package_name OWNER TO new_owner;
    
  • 重编译PACKAGE。

    ALTER PACKAGE package_name COMPILE { compile_pkg_opt } ;
    

参数说明

  • package_name

    要修改的PACKAGE名称。

    取值范围:已存在的PACKAGE名,仅支持修改单个PACKAGE。

  • new_owner

    PACKAGE的新所有者。要修改函数的所有者,新所有者必须拥有该PACKAGE所属模式的CREATE权限。

    取值范围:已存在的用户角色。

  • compile_pkg_opt

    重编译PACKAGE的选项,包括SPECIFICATION, BODY, PACKAGE或不指定,不指定时默认选项为PACKAGE。

示例

请参见CREATE PACKAGE中示例。

相关链接

CREATE PACKAGEDROP PACKAGE

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值