我有一个非常简单的PL / pgsql脚本:
declare x varchar(100);
当我运行它时,我收到一条消息:
[WARNING ] declare x varchar(100) ERROR: Syntax error at or near "varchar" LINE 1: declare x varchar(100) ^
我真的不明白这有什么问题.
解决方法
你只能在Postgresql中的函数体内使用过程语句.
CREATE OR REPLACE FUNCTION foo() RETURNS int AS $$-- here start procedural part DECLARE x int; BEGIN x := 10; RETURN x; END; $$-- here finish procedural part LANGUAGE plpgsql; -- language specification
或者在临时功能中(匿名阻止)
DO $$ DECLARE x int; BEGIN x := 10; RAISE NOTICE '>>>%<<<',x; END; $$;