将 Oracle 过程中的 "IN" 关键字转换为 Netezza 存储过程中的等效逻辑

Converting "IN" keyword in Oracle procedure to equivalent logic in Netezza stored procedure

如何将下面的 "IN" 关键字从下面的 Oracle PL/SQL 代码转换为 Netezza SQL 代码?

CREATE OR REPLACE PROCEDURE SP1 (typ IN VARCHAR, str IN VARCHAR) as

p1 varchar(50);
p2 number(9);
p3 char(1);

BEGIN 

-- CODE GOES HERE

END SP1

Netezza的参数列表都是input,按位置引用

您 link 在 DECLARE 块中使用 ALIAS 对有意义的名称进行位置输入。这些参数在过程范围内是常量。

p_ 命名只是一种风格约定,旨在提醒您它们是不变的。变量通常以 v_.

作为前缀

这是您的代码到 Netezza 的快速映射。

CREATE OR REPLACE PROCEDURE SP1 (VARCHAR(any), VARCHAR(any))
RETURNS INTEGER
LANGUAGE NZPLSQL AS
BEGIN_PROC
DECLARE
p_typ ALIAS FOR ;
p_str ALIAS FOR ;

v_1 varchar(50);
v_2 bigint;  -- changed this to be a valid Netezza for the example
v_3 char(1);

BEGIN

-- CODE GOES HERE



END;

END_PROC;