云数据库 GAUSSDB-CREATE PROCEDURE:参数说明
参数说明
- OR REPLACE
当存在同名的存储过程时,替换原来的定义。
- procedure_name
创建的存储过程名称,可以带有模式名。
取值范围:字符串,要符合标识符命名规范。
- argmode
参数的模式。
VARIADIC用于声明数组类型的参数。
取值范围: IN,OUT,INOUT或VARIADIC。缺省值是IN。只有OUT模式的参数能跟在VARIADIC参数之后。
- argname
参数的名称。
取值范围:字符串,要符合标识符命名规范。
- argtype
参数的数据类型。可以使用%TYPE或%ROWTYPE间接引用变量或表的类型,详细可参考存储过程章节定义变量。
取值范围:可用的数据类型。
PACKAGE外PROCEDURE argtype中%TYPE不支持引用PACKAGE变量的类型。
- expression
参数的默认表达式。
- 推荐使用方式:将所有默认值参数定义在所有非默认值参数后。
- configuration_parameter
- value
把指定的配置参数设置为给定的值。如果value是DEFAULT,则在新的会话中使用系统的缺省设置。OFF关闭设置。
取值范围:字符串
- DEFAULT
- OFF
- 指定默认值。
- from current
取当前会话中的值设置为configuration_parameter的值。
- value
- IMMUTABLE、STABLE等
行为约束可选项。各参数的功能与CREATE FUNCTION类似,详细说明见CREATE FUNCTION
- plsql_body
PL/SQL存储过程体。
当在存储过程体中进行创建用户、修改密码或加解密等涉及密码或密钥相关操作时,系统表及日志中会记录密码或密钥的明文信息。为防止敏感信息泄露,不建议用户在存储过程体中进行涉及密码或密钥等敏感信息的相关操作。
argname和argmode的顺序没有严格要求,推荐按照argname、argmode、argtype的顺序使用。