ЗАМЕЧАНИЕ: использование информации pg_pltemplate вместо параметров CREATE LANGUAGE - PullRequest
0 голосов
/ 30 декабря 2011

Я получаю это сообщение об ошибке (показано в заголовке), когда запускаю этот оператор SQL в PG 8.4:

psql -h localhost -U postgres -d mydb -c "CREATE TRUSTED PROCEDURAL LANGUAGE 'plpgsql' HANDLER plpgsql_call_handler VALIDATOR plpgsql_validator"

Что является причиной этого (раньше он работал с более ранними версиями PG), и как мне решить эту проблему?

1 Ответ

1 голос
/ 30 декабря 2011

Эта процедура была упрощена . Для plpgsql просто используйте:

CREATE LANGUAGE plpgsql;

Сообщение об ошибке сообщает вам, что plpgsql входит в число предопределенных языков, перечисленных в системной таблице pg_pltemplate. Просто посмотрите:

SELECT * FROM pg_pltemplate;

В PostgreSQL 9.0 и более поздних версиях PL / pgSQL предустановлен по умолчанию.

...