Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Как преобразовать HEX в строку?  [new]
vas177
Member

Откуда:
Сообщений: 54
Т. е., например, запрос select rawtohex('ABC') from dual выдаёт строку '414243'.
Хотелось бы обратным образом поступить: на входе '414243', а на выходе получаем 'ABC'.
23 июн 08, 16:27    [5835241]     Ответить | Цитировать Сообщить модератору
 Re: Как преобразовать HEX в строку?  [new]
orawish
Member

Откуда: Гадюкино-2 (City)
Сообщений: 15487
vas177
Т. е., например, запрос select rawtohex('ABC') from dual выдаёт строку '414243'.
Хотелось бы обратным образом поступить: на входе '414243', а на выходе получаем 'ABC'.

А в чём вопрос?
select hextoraw(rawtohex('ABC')) from dual;
23 июн 08, 16:35    [5835299]     Ответить | Цитировать Сообщить модератору
 Re: Как преобразовать HEX в строку?  [new]
vas177
Member

Откуда:
Сообщений: 54
orawish
А в чём вопрос?
select hextoraw(rawtohex('ABC')) from dual;

Вопрос в том, что на выходе получается не 'ABC', а '414243'
23 июн 08, 16:38    [5835327]     Ответить | Цитировать Сообщить модератору
 Re: Как преобразовать HEX в строку?  [new]
orawish
Member

Откуда: Гадюкино-2 (City)
Сообщений: 15487
ок. см:
select
  t
 ,utl_raw.cast_to_raw(t) a1r
 ,rawtohex(utl_raw.cast_to_raw(t)) a2
 ,hextoraw(rawtohex(utl_raw.cast_to_raw(t))) a3r
 ,utl_raw.cast_to_varchar2(utl_raw.cast_to_raw(t)) a4
 ,utl_raw.cast_to_varchar2(hextoraw(rawtohex(utl_raw.cast_to_raw(t)))) a4
 from (select 'ABC' t from dual);
23 июн 08, 16:39    [5835333]     Ответить | Цитировать Сообщить модератору
 Re: Как преобразовать HEX в строку?  [new]
vas177
Member

Откуда:
Сообщений: 54
Большое спасибо! :)
23 июн 08, 16:41    [5835356]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить