I got a plpgsql function here to indicate if any warning raised during 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;
This function kept giving me syntax error near:
ERROR: syntax error at or near "SQLSTATE"
LINE 11: WHEN SQLSTATE '01000' THEN return 1;
I am not sure where I missed the syntax error.
My postgres build is 8.2.15.