|
su.dbms.sql- SU.DBMS.SQL ------------------------------------------------------------------ From : Andrei N.Sobchuck 2:5020/400 30 Mar 2001 15:27:41 To : All Subject : Re: Хранение бинарных данные в PostgreSQL -------------------------------------------------------------------------------- sy.ua> <9a1jgb$176$1@news.lucky.net> From: "Andrei N.Sobchuck" <andrei@mart.cherkassy.ua> Приветствую, "Alexander Bodnar" <bodnar@malva.com.ua>! > > "Andrei N.Sobchuck" <andrei@mart.cherkassy.ua> wrote in message > news:c1uu99.h09.ln@server1.mart.cherkassy.ua... > > Приветствую, "Alexander Bodnar" <bodnar@malva.com.ua>! > > > > > Hе записываются бинарные данные в которых есть ноль. > > > > > Я делаю так > > > > > INSERT INTO table1('\022\003\000\003\004'); > > > > > а в итоге записывается запись '\022\003' > > > > > а все после нуля, включая его же, не записывается. > > > > > Таблица имеет одно поле с типом bytea. > > > > Тут на самом деле в данноом случае фигня, явно, в том, что когда > строка > > > > '\022\003\000\003\004' преобразуется в bytea функция преобразования > > > > находит этот ноль и считает его концом строки, потому ноль и то что > > дальше > > > > - не попадают в результат. Воот. Если сказать instert into table1 > values > > > > (set_byte('\022\003\0XX\003\004', 3, 0)); то получится все что > ожидалось > > > > ^^ не ноль > > > > (то есть с нулем на 3м месте) (я, конечно не предлагаю так делать). > > > > А для доступа к базе - вы что используете? (Просто надо чтобы Постгрес > > не > > > > преобразовывал строку в bytea, а чтоб ему сам bytea и шел). > > > > > > > > /Constantin > > > > > > Все работает, но а если несколько нулей? > > > Hапример надо вставить > > > '\001\002\000\003\004\005\000\006\007\008\000\009\010' > > > > Заганять в Base64? > > > > Что такое Base64? the Base64 encoding specified in RFC 2045 - MIME (Multipurpose Internet Mail Extensions). This encoding is designed to make binary data survive transport through transport layers that are not 8-bit clean, such as mail bodies. Base64-encoded data takes about 33% more space than the original data. > > --- ifmail v.2.15dev5 * Origin: Fidolook Express 2.000 www.fidolook.da.ru (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /su.dbms.sql/29690573f8efd.html, оценка из 5, голосов 10
|