Re: create one function to let other user execute vacuum command. got such an error.

Поиск
Список
Период
Сортировка
От Guillaume Lelarge
Тема Re: create one function to let other user execute vacuum command. got such an error.
Дата
Msg-id 1332917066.2249.2.camel@localhost.localdomain
обсуждение исходный текст
Ответ на create one function to let other user execute vacuum command. got such an error.  (leaf_yxj <leaf_yxj@163.com>)
Ответы Re: create one function to let other user execute vacuum command. got such an error.  (Greg Jaskiewicz <gryzman@gmail.com>)
Список pgsql-general
On Tue, 2012-03-27 at 18:51 -0700, leaf_yxj wrote:
> create one function to let other user execute vacuum command. got such an
> error. Please help. Thanks. Regards . Grace
>
> rrp=> create function vacuum_f ( tablename char(100))
>  Returns char(100) AS $$
> vacuum tablename;
> $$ Language plpgsql security definer;
> ERROR:  syntax error at or near "vacuum"
> LINE 3:   vacuum tablename;
>           ^
> rrp=>
>

Well, first, it doesn't follow PL/pgsql guidelines. You need at least a
BEGIN at the beginning of the function, and an END at the end.

But even with this, you cannot use VACUUM in a function. Don't remember
the reason why right now, but all you'll get is this error:

ERROR:  VACUUM cannot be executed from a function or multi-command
string


--
Guillaume
http://blog.guillaume.lelarge.info
http://www.dalibo.com


В списке pgsql-general по дате отправления:

Предыдущее
От: leaf_yxj
Дата:
Сообщение: Re: postgresql commit.
Следующее
От: Greg Jaskiewicz
Дата:
Сообщение: Re: create one function to let other user execute vacuum command. got such an error.