powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / plperl & utf8
2 сообщений из 2, страница 1 из 1
plperl & utf8
    #34256002
vadiml
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
почему-то не работает перекодировка на перле при utf8 в базе:
функция получает строку на русском, перекодирует в латинские буквы и возвращает ее
если
Код: plaintext
1.
2.
3.
4.
5.
CREATE OR REPLACE FUNCTION rus2lat(text) RETURNS text AS $$
    my $strs = shift;
    strs =~ tr/слов/slov/;
    return $strs;
$$ LANGUAGE plperl;
то из 'слово' получаю 'nmayayaeay' (здесь, возможно, правильно, т.к. в консоли получается то же самое, хотя хотелось бы чтоб utf8 подхватывало сразу, т.к. база создавалась с ENCODING 'UTF8')
но вот когда прописываю use utf8 -- ????
Код: plaintext
1.
2.
3.
4.
5.
6.
CREATE OR REPLACE FUNCTION rus2lat(text) RETURNS text AS $$
    use utf8;
    my $strs = shift;
    strs =~ tr/слов/slov/;
    return $strs;
$$ LANGUAGE plperlu;

на выходе вместо 'slovo' получаю 'Ñлово'
хотя при запуске в консоли -- перекодирует нормально

системная локаль -- тоже utf8
Где копать -- не знаю.
...
Рейтинг: 0 / 0
plperl & utf8
    #34286881
vadiml
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сам нашел (случайно):
обновил базу с 8.0.8 до 8.1.6 -- и все заработало
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / plperl & utf8
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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