Re: help on quoteing in plpgsql function

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: help on quoteing in plpgsql function
Дата
Msg-id 25662.1024407376@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: help on quoteing in plpgsql function  (Robert Treat <rtreat@webmd.net>)
Список pgsql-general
Robert Treat <rtreat@webmd.net> writes:
>         strDelete := ''DELETE FROM ''
>             || quote_ident(arrTables.table_name)
>             || '' WHERE timestamp < now() - ((''''''
>             || arrTables.historysize
>             || '' days'''' )::interval) '';
>         EXECUTE strDelete;

> Note that no "quote_foo" function was needed on the second variable
> since I had to enclose it along with other text within my own quotes.

Seems like it'd be better to use quote_literal, viz

        strDelete := ''DELETE FROM ''
            || quote_ident(arrTables.table_name)
            || '' WHERE timestamp < now() - ''
            || quote_literal(arrTables.historysize || '' days'')
            || ''::interval'';
        EXECUTE strDelete;

            regards, tom lane

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

Предыдущее
От: terry@greatgulfhomes.com
Дата:
Сообщение: Re: Input/Output Error Message
Следующее
От: Fabricio Boppre
Дата:
Сообщение: number of registers of a table