powered by simpleCommunicator - 2.0.41     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / postgresql 7.3 и CASE/WHEN
4 сообщений из 4, страница 1 из 1
postgresql 7.3 и CASE/WHEN
    #32199192
shur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
словил такую проблему:
s=> SELECT case 1 when 1 then 0 else '' end;
ERROR: pg_atoi: zero-length string

проблема в том, что по условию выбирается 0 (т.е. работает then), однако сервер всё равно пытается конвертнуть пустую строку в int.
самое интересное, что на 7.2 я такого не замечал.

Подскажите, пожалуйста, в чем проблема.

PS: сервер redhat 7.3
postgresql 7.3.3 поставлен из rpm с сайта постгреса
конфиг запроса во freeradius'е примерно такой:
UPDATE radacct SET AcctStopTime = '%S', AcctInputOctets = CASE WHEN '%{Acct-Input-Octets}' = '' THEN 0 ELSE '%{Acct-Input-Octets}' END;
т.е. если переменная %{Acct-Input-Octets} пустая, то писать в базовод 0.
поле AcctInputOctets типа numeric.
...
Рейтинг: 0 / 0
postgresql 7.3 и CASE/WHEN
    #32199660
Sad Spirit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> проблема в том, что по условию выбирается 0 (т.е. работает then), однако сервер всё равно пытается конвертнуть пустую строку в int.

что в принципе правильно: серверу ж надо знать какой выходной тип будет у CASE...

> UPDATE radacct SET AcctStopTime = '%S', AcctInputOctets = CASE WHEN '%{Acct-Input-Octets}' = '' THEN 0 ELSE '%{Acct-Input-Octets}' END;

ну, посылай багрепорт авторам freeradius'а. :D
...
Рейтинг: 0 / 0
postgresql 7.3 и CASE/WHEN
    #32202755
Vladimir_Pivkin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А так не пробовал?
SELECT case 1 when 1 then '0' else '' end;
...
Рейтинг: 0 / 0
postgresql 7.3 и CASE/WHEN
    #32202802
shur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
спасибо, работает ))
только поле у меня numeric, пришлось сделать

SELECT case 1 when 1 then '3000' else '' end::numeric;
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / postgresql 7.3 и CASE/WHEN
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]