Re: Using UTF strings in pg8.3 - storing hexadecimal values in bytea columns

Поиск
Список
Период
Сортировка
От Richard Huxton
Тема Re: Using UTF strings in pg8.3 - storing hexadecimal values in bytea columns
Дата
Msg-id 4918647C.5070509@archonet.com
обсуждение исходный текст
Ответ на Using UTF strings in pg8.3 - storing hexadecimal values in bytea columns  (Mario Splivalo <mario.splivalo@megafon.hr>)
Ответы Re: Using UTF strings in pg8.3 - storing hexadecimal values in bytea columns  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: Using UTF strings in pg8.3 - storing hexadecimal values in bytea columns  (Mario Splivalo <mario.splivalo@megafon.hr>)
Список pgsql-sql
Mario Splivalo wrote:
> Richard Huxton wrote:
>> Mario Splivalo wrote:
>>> I have this issue:
>>>
>>> postgres=# select E'\xc5\x53\x94\x96\x83\x29';
>>> ERROR:  invalid byte sequence for encoding "UTF8": 0xc553
>>
>> I think you want to be using octal escapes. That's text you're
>> generating above.
>>
>> CREATE TABLE bytea_test (b bytea);
>> INSERT INTO bytea_test (b) VALUES (E'\\305\\123\\224\\226');
>> SELECT * FROM bytea_test;
>>        b
>> ---------------
>>  \305S\224\226
>> (1 row)
> 
> That's true, but I'd still like to use hexadecimal notation. Manual
> states that I could say '\xC5', but then I get those encoding errors.

I think you're reading the "text" rather than "bytea" part of the manual.

4.1.2.1. String Constants
"...and \xhexdigits, where hexdigits represents a hexadecimal byte
value. (It is your responsibility that the byte sequences you create are
valid characters in the server character set encoding.)"

No mention of hex in the bytea section of the manual.

--  Richard Huxton Archonet Ltd


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

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: Using UTF strings in pg8.3 - storing hexadecimal values in bytea columns
Следующее
От: Tom Lane
Дата:
Сообщение: Re: Using UTF strings in pg8.3 - storing hexadecimal values in bytea columns