定义CONSTANT变量

最近更新时间: 2025-02-18 16:02:00

  • 复制
    复制成功
postgres=# CREATE OR REPLACE PROCEDURE p_constant()  AS
$$
DECLARE    
    v_int CONSTANT integer := 1;     
BEGIN
    RAISE NOTICE 'v_int = %',v_int;  
END;
$$
LANGUAGE plpgsql;
CREATE PROCEDURE
postgres=# CALL p_constant();
NOTICE:  v_int = 1
CALL
#CONSTANT 不能再次赋值
postgres=# CREATE OR REPLACE PROCEDURE p_constant()  AS
$$
DECLARE    
    v_int CONSTANT integer := 1;     
BEGIN
    RAISE NOTICE 'v_int = %',v_int;  
v_int = 10;
END;
$$
LANGUAGE plpgsql;
ERROR:  "v_int" is declared CONSTANT
LINE 7: v_int = 10;
        ^
postgres=#