Re: Storing null bytes in bytea

Поиск
Список
Период
Сортировка
От Andy Shellam
Тема Re: Storing null bytes in bytea
Дата
Msg-id 49F73378.7000100@networkmail.eu
обсуждение исходный текст
Ответ на Re: Storing null bytes in bytea  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-sql
Hi Tom,
> Your example works fine in psql:
>
> regression=# create table t1 (f1 bytea);
> CREATE TABLE
> regression=# insert into t1 values
(E'IsLoggedIn|b:1;CurrentUser|O:17:"Class_SystemUser":4:{s:26:"\\000Class_SystemUser}'::bytea);
> INSERT 0 1
> regression=# select * from t1;
>                                         f1                                      
> -----------------------------------------------------------------------------------
>  IsLoggedIn|b:1;CurrentUser|O:17:"Class_SystemUser":4:{s:26:"\000Class_SystemUser}
> (1 row)
>
>
> I suspect what is happening is that some layer on the client side is
> doubling (or perhaps undoubling?) the backslashes for you.  Exactly
> what are you doing with that literal as you build the query?  It might
> help to turn on log_statements so that you can see just what the
> server is getting.
>   

Many thanks for your reply.  I was a bit naive about the quality of the 
client I was using (Navicat 8.1.)  It turns out in the "Memo" view it 
doesn't show anything past the first zero byte.  However switch it to 
hex view and you see the full bytes.

I think my issue that it wasn't working on the client side (and caused 
me to examine it in more detail in the database) was because it wasn't 
unescaping correctly in the application code when it read the data back 
out of the database.

Next time I won't be so lazy and try it out in psql first...

Regards,
Andy


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

Предыдущее
От: Emi Lu
Дата:
Сообщение: pg_stat_activity return all connections
Следующее
От: Erik Jones
Дата:
Сообщение: Re: pg_stat_activity return all connections