Re: Bytea network traffic: binary vs text result format
От | Markus Schiltknecht |
---|---|
Тема | Re: Bytea network traffic: binary vs text result format |
Дата | |
Msg-id | 46640B8F.8040503@bluegap.ch обсуждение исходный текст |
Ответ на | Bytea network traffic: binary vs text result format ("Miha D. Puc" <miha.puc@eba.si>) |
Ответы |
Re: Bytea network traffic: binary vs text result format
|
Список | pgsql-interfaces |
Hi, Miha D. Puc wrote: > So there is a need (people asking) and reason (performance) to use > binary format. You are aware that PostgreSQL itself *can* transfer values in binary format? Check the Documentation: "43.1.3. Formats and Format Codes": http://www.postgresql.org/docs/8.1/interactive/protocol.html This works since protocol version 3, AFAICT. The client needs to support that, though. But the php pgsql binding, just as an example, doesn't use that feature. > So with all the above there should be a utility for conversion between > binary format and native types and/or string format in libpq. There already are. Not in libpq, though. Most (if not all) internal types have those functions. See for example: # SELECT typinput, typoutput, typreceive, typsend # FROM pg_type WHERE typname='int4'; typinput | typoutput | typreceive | typsend ----------+-----------+------------+---------- int4in | int4out | int4recv | int4send (1 row) The input and output functions deal with the textual representation, while send and receive convert to a binary representation in network byte order. Hope that helps. Regards Markus
В списке pgsql-interfaces по дате отправления: