powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / литералы \u0440 в символ юникода
3 сообщений из 3, страница 1 из 1
литералы \u0440 в символ юникода
    #39157728
sanringo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
версия 9.2.
Допустим в базе есть поле, значения которого вида ' ООО SD Какой то текст'. Нужно заменить О на соответствующее 'О'.
Как привести его в ' ООО SD Какой то текст'?
...
Рейтинг: 0 / 0
литералы \u0440 в символ юникода
    #39157771
sanringo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пробовал http://stackoverflow.com/questions/20124393/convert-escaped-unicode-character-back-to-actual-character-in-postgresql
но при
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
CREATE OR REPLACE FUNCTION public.converter_to_unicode(text, text) 
 RETURNS text
 LANGUAGE plpgsql
 AS $function$
 DECLARE result text;
 BEGIN
   EXECUTE format('SELECT U&%s UESCAPE %s', 
                         quote_literal(replace($1, '\u','^')),
                         quote_literal($2)) INTO result;
   RETURN result;
 END;
 $function$;

SELECT
	converter_to_unicode(tmp.val::TEXT, '^')
FROM
	tmp;



у меня выдаваёт ошибку колонка U не существует
...
Рейтинг: 0 / 0
литералы \u0440 в символ юникода
    #39158271
Фотография grufos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sanringo,
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
CREATE OR REPLACE FUNCTION public.converter_to_unicode(text) 
 RETURNS text
 LANGUAGE plpgsql
 AS $function$
 DECLARE result text;
 BEGIN
   EXECUTE ('SELECT U&''' || replace($1, '\u','\') || '''') INTO result;
   RETURN result;
 END;
 $function$;

select  public.converter_to_unicode('\041e\041e\041e SD Какой то текст');

converter_to_unicode
ООО SD Какой то текст
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / литералы \u0440 в символ юникода
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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