Re: storing binary data
От | Alfred Perlstein |
---|---|
Тема | Re: storing binary data |
Дата | |
Msg-id | 20001016205633.L272@fw.wintelcom.net обсуждение исходный текст |
Ответ на | Re: storing binary data (Neil Conway <nconway@klamath.dyndns.org>) |
Список | pgsql-general |
* Neil Conway <nconway@klamath.dyndns.org> [001016 20:41] wrote: > On Mon, Oct 16, 2000 at 11:22:40PM -0400, Tom Lane wrote: > > Neil Conway <nconway@klamath.dyndns.org> writes: > > > I want to store some binary data in Postgres. The data is an > > > MD5 checksum of the user's password, in binary. It will be > > > exactly 16 bytes (since it is a one-way hash). > > > > > Can I store this safely in a CHAR column? > > > > No. CHAR and friends assume there are no null (zero) bytes. > > In MULTIBYTE setups there are probably additional constraints. > > > > You could use bytea, but I would recommend converting the checksum > > to a hex digit string and then storing that in a char-type field. > > Hex is the usual textual representation for MD5 values, no? > > It is, but (IMHO) it's a big waste of space. The actual MD5 digest is > 128 bits. If stored in binary form, it's 16 bytes. If stored in hex > form (as ASCII), it's 32 characters @ 1 byte per character = 32 bytes. > In Unicode, that's 64 bytes (correct me if I'm wrong). > > It's not a huge deal, but it would be nice to store this efficiently. > Is this possible? Why not use base64? It's pretty gross but might work for you. -Alfred
В списке pgsql-general по дате отправления: