SPL 例程格式 / CREATE PROCEDURE 或 CREATE FUNCTION 语句 |
当您创建 SPL 例程时,您可定义参数列表,以便当调用例程时,它接受一个或多个参数。参数列表是可选的。
然而,对于序列数据类型,例程可返回在数值上对等的值,将它们强制转型为对应的整数类型(INT、INT8 或 BIGINT)。类似地,对于支持简单大对象数据类型的例程,参数列表可包括 REFERENCES 关键字来返回指向 TEXT 或 BYTE 对象的存储位置的描述符。
图: 不同的参数列表的示例。
CREATE PROCEDURE raise_price(per_cent INT); CREATE FUNCTION raise_price(per_cent INT DEFAULT 5); CREATE PROCEDURE update_emp(n employee_t); CREATE FUNCTION update_nums( list1 LIST(ROW (a VARCHAR(10), b VARCHAR(10), c INT) NOT NULL ));
如果您以缺省值定义参数,则用户可使用或不用对应的参数来执行该 SPL 例程。如果用户执行不带参数的 SPL 例程,则数据库服务器指定参数的缺省值作为参数。
当您调用 SPL 例程时,您可对参数给定 NULL 值。在缺省情况下,SPL 例程处理 NULL 值。然而,如果参数为集合元素,则您不可对该参数给定 NULL 值。