Re: Freezing localtimestamp and other time function on some value

Поиск
Список
Период
Сортировка
От Pavel Stehule
Тема Re: Freezing localtimestamp and other time function on some value
Дата
Msg-id CAFj8pRCaf-GHSQajHavAw1o+ppwp2efOuzDzXmTQox+M4VMVrg@mail.gmail.com
обсуждение исходный текст
Ответ на Freezing localtimestamp and other time function on some value  (Alex Ignatov <a.ignatov@postgrespro.ru>)
Ответы Re: Freezing localtimestamp and other time function on some value  (Petr Korobeinikov <pkorobeinikov@gmail.com>)
Список pgsql-general
Hi

2016-04-12 12:50 GMT+02:00 Alex Ignatov <a.ignatov@postgrespro.ru>:
Hello!
Is there any method to freeze localtimestamp and other time function value.
Say after freezing on some value sequential calls to these functions give you the same value over and over again.
This  is useful primarily for testing.

In oracle there is alter system set fixed_date command. Have Postgres this functionality?

It is not possible in Postgres

PostgreSQL solution is using working time as function parameter. This parameter can have default value.

postgres=# select test('2016-03-10 10:00:00');

NOTICE:  current time is: 2016-03-10 10:00:00

postgres=# select test();
NOTICE:  current time is: 2016-04-12 13:47:21.644488

postgres=# select test();
NOTICE:  current time is: 2016-04-12 13:47:22.633711

CREATE OR REPLACE FUNCTION public.test(t timestamp without time zone DEFAULT now())
 RETURNS void
 LANGUAGE plpgsql
AS $function$
BEGIN
  RAISE NOTICE 'current time is: %', t;
END;
$function$

Regards

Pavel
 

--
Alex Ignatov
Postgres Professional: http://www.postgrespro.com
The Russian Postgres Company



--
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

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

Предыдущее
От: Petr Korobeinikov
Дата:
Сообщение: Re: Freezing localtimestamp and other time function on some value
Следующее
От: Petr Korobeinikov
Дата:
Сообщение: Re: Freezing localtimestamp and other time function on some value