在函数postgres中分配参数

时间:2017-01-23 12:45:32

标签: postgresql function set locale

我有这个功能是postgres 9.5:

git cherry-pick -n commit1 commit3
git commit

我希望将功能语言分配给LC_TIME。 lang是' es_ES.UTF-8'等等。但不行。另外,我想如果lang不存在,请指定默认值:

例如:

CREATE OR REPLACE FUNCTION report_summary(lang TEXT)
...
BEGIN
SET LC_TIME = lang
...

有什么想法吗?

由于

1 个答案:

答案 0 :(得分:2)

您必须使用动态查询:

EXECUTE 'SET lc_time = ' || quote_ident(lang);

或者更好的是,使用set_config更改设置:

PERFORM set_config('lc_time', lang, FALSE);