我在这里有一个 plpgsql 函数来指示在以下期间是否出现任何警告ANALYZE
:
CREATE OR REPLACE FUNCTION analyzeWarning() RETURNS integer AS $$
DECLARE
warningRaised int;
BEGIN
warningRaised := 0;
FOR i IN 1..10
LOOP
BEGIN
ANALYZE;
EXCEPTION
WHEN SQLSTATE '01000' THEN return 1;
END;
END LOOP;
RETURN 0;
END;
$$ LANGUAGE plpgsql;
这个函数不断给我语法错误:
ERROR: syntax error at or near "SQLSTATE"
LINE 11: WHEN SQLSTATE '01000' THEN return 1;
我不确定我在哪里错过了语法错误。
我的 postgres 版本是 8.2.15。